为什么Java中没有局部静态变量?

拉菲·卡马尔(Rafi Kamal):

在C / C ++中,我们使用静态局部变量来维护方法的状态。但是,为什么Java不支持它呢?

是的,我可以为此使用一个静态字段。但是创建一个仅维护一个方法状态的字段有点奇怪吗?

托尼·K:

您已经找到了唯一的解决方案。

Java放弃了C ++的许多复杂性,这就是其中之一。

作用于函数的静态变量并发地对您造成麻烦(例如,正是出于这个原因,strtok是与pthread一起使用的著名的讨厌变量)。

通常,您想要的是带有状态的对象。然后,所讨论的函数应具有对象级变量。然后,您可以创建每个维护状态的实例。

更容易理解/维护/等等。

如果您确实需要将状态保持为单例,则可以使用静态字段。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Java

为什么Java静态变量没有更新?

来自分类Java

Java的:为什么静态变量事安置?

来自分类Java

为什么即使事后没有修改,Java中的局部变量也不被视为“有效的最终变量”?

来自分类Dev

局部静态变量如何在方法中工作?

来自分类Java

Java中私有静态变量的用途是什么?

来自分类Python

为什么Python没有静态变量?

来自分类Java

为什么Java中没有全局变量?

来自分类Java

Java:为什么可以从类外部的静态方法访问非静态变量?

来自分类Java

Java静态变量和局部变量

来自分类Java

在构造函数中初始化静态变量时,为什么Java不给出错误?

来自分类Dev

除了静态类变量,Java中是否还有其他类型的静态变量?

来自分类Dev

为什么局部变量实例化失败,而静态变量实例化失败?

来自分类Dev

为什么我的main.c文件没有获得此全局静态变量的更新值?

来自分类Dev

Javascript局部静态变量

来自分类Dev

关于Java中的Singleton模式,为什么不直接将静态变量分配给方法中的新局部变量,为什么不直接使用静态变量呢?

来自分类Dev

为什么xsub中的静态变量不是线程安全的?

来自分类Dev

为什么我的函数局部变量之间在堆栈中没有存储空间?

来自分类Dev

为什么状态变量在此Swift代码的某些部分中没有改变?

来自分类Dev

当存储该引用的局部变量设置为null时,为什么静态变量没有设置为null?

来自分类Dev

Java中的对象通信,没有带有getter和setter的静态变量

来自分类Dev

为什么JVM为什么将堆用于对象和静态变量,将堆栈用于局部变量和函数调用?

来自分类Dev

为什么我的局部变量没有被覆盖?

来自分类Dev

为什么超类中的静态块/静态变量在main之前初始化?

来自分类Dev

Swift:为什么没有dynamicType的非静态方法不能调用静态变量和常量(静态let)?

来自分类Dev

为什么方法无法识别指向静态变量的变量?

来自分类Dev

带有局部静态变量的单例构造函数

来自分类Dev

Java中静态变量的意义是什么?

来自分类Dev

静态变量没有增加

来自分类Dev

为什么方法局部静态变量绑定到类而不是实例?

Related 相关文章

  1. 1

    为什么Java静态变量没有更新?

  2. 2

    Java的:为什么静态变量事安置?

  3. 3

    为什么即使事后没有修改,Java中的局部变量也不被视为“有效的最终变量”?

  4. 4

    局部静态变量如何在方法中工作?

  5. 5

    Java中私有静态变量的用途是什么?

  6. 6

    为什么Python没有静态变量?

  7. 7

    为什么Java中没有全局变量?

  8. 8

    Java:为什么可以从类外部的静态方法访问非静态变量?

  9. 9

    Java静态变量和局部变量

  10. 10

    在构造函数中初始化静态变量时,为什么Java不给出错误?

  11. 11

    除了静态类变量,Java中是否还有其他类型的静态变量?

  12. 12

    为什么局部变量实例化失败,而静态变量实例化失败?

  13. 13

    为什么我的main.c文件没有获得此全局静态变量的更新值?

  14. 14

    Javascript局部静态变量

  15. 15

    关于Java中的Singleton模式,为什么不直接将静态变量分配给方法中的新局部变量,为什么不直接使用静态变量呢?

  16. 16

    为什么xsub中的静态变量不是线程安全的?

  17. 17

    为什么我的函数局部变量之间在堆栈中没有存储空间?

  18. 18

    为什么状态变量在此Swift代码的某些部分中没有改变?

  19. 19

    当存储该引用的局部变量设置为null时,为什么静态变量没有设置为null?

  20. 20

    Java中的对象通信,没有带有getter和setter的静态变量

  21. 21

    为什么JVM为什么将堆用于对象和静态变量,将堆栈用于局部变量和函数调用?

  22. 22

    为什么我的局部变量没有被覆盖?

  23. 23

    为什么超类中的静态块/静态变量在main之前初始化?

  24. 24

    Swift:为什么没有dynamicType的非静态方法不能调用静态变量和常量(静态let)?

  25. 25

    为什么方法无法识别指向静态变量的变量?

  26. 26

    带有局部静态变量的单例构造函数

  27. 27

    Java中静态变量的意义是什么?

  28. 28

    静态变量没有增加

  29. 29

    为什么方法局部静态变量绑定到类而不是实例?

热门标签

归档