Java中的静态方法能否调用自身?

5
我有一个静态方法,用于删除FTP目录树,所以如果找到子目录,它需要递归调用自身。这会因为它是静态的而导致混淆吗?
编辑:在发布之前我没有进行测试,因为如果它引起问题,我可能会删除测试目标外的其他文件,我不想冒险。

1
是的,一个静态方法可以递归地调用自己。这可能会引起什么混乱?你似乎可以通过一个微不足道的实验来回答这个问题。 - President James K. Polk
3
不知道为什么他不愿意花费10秒钟去找到答案,而非用30秒钟发布一个注定会引起争议的帖子。 - Mike
4
我认为他只是在坦率地说话。 - pstanton
听起来你需要版本控制。 :/ - Mike
为什么你会在实际运行或者潜在危险的代码上进行“测试”? - user166390
2
Frank,如果你无法在没有风险的情况下测试如此基本的东西,那么你确实需要改变自己的工作方式。 - pstanton
5个回答

9
不会,静态方法可以在递归调用中使用。

5
不用了,你很好。显然,我必须写至少30个字符才能接受此帖子。

3
顶这个帖子是因为“显然我必须写至少30个字符才能发布此帖。” - Rahul Shardha

2

不会有问题,为什么会有问题呢?


1

只有当你的递归方法没有良好的停止条件时,才会出现问题。如果是这种情况,你很快就会发现 - 当堆栈帧在彼此之上堆积时,你将收到OutOfMemoryError。


0
不会的 :) 我没有看到它比实例方法更有问题的任何理由。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接