这几天在复习递归,发现很多Java递归方法示例都是静态的。有人能解释一下为什么吗?
我的猜测是他们想要节省内存,因为从逻辑上讲,只要其子递归方法正在运行并且尚未返回任何内容,“父”递归方法就会保持沉默。
还请检查以下猜测是否正确:
静态递归方法在同一个线程上运行,而非静态递归方法可能在单独的线程上运行,这是正确的还是没有任何意义?
最佳答案
因为递归方法/算法通常仅由其参数控制,而不是由实例变量控制。
任何不依赖实例变量的方法都可以(并且可能应该)设为静态
。
关于java - 为什么Java中的递归方法通常是静态的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19127667/