Java中实现跨类和函数共享变量的策略

嘿,我们来谈谈Java中的公共静态变量。
这个对象允许你在类和函数之间共享变量,这非常有趣。
就像类级别一样,它是一个全局变量。
无论您创建多少个对象,它们都共享此变量的副本。

任何不变的关键字都非常重要。
它将变量更改为类变量而不是实例变量。
这意味着无论您创建多少个对象,内存中都只有该变量的一份副本。
而且,单元在安装时就启动了,生命周期就和程序一样。

public 关键字也不错。
它打开一扇灵活的门,以便可以直接访问其他部件。
因此,您可以使用类名和变量名来访问和修改它,而无需先创建对象。

比如我之前写过一个全局状态类,就是 public static boolean n = false;这是一个常见的变量。

然后,我编写了ClassA来读取这个变量,并编写了ClassB来修改它。
我还编写了MainApp作为主程序来展示整个过程。

当时我很兴奋,发现ClassA和ClassB都可以访问和修改这个变量,相当神奇。

不过,这东西也有风险。
例如,任何类都可以修改此变量,从而使状态跟踪变得困难,尤其是在大型项目中。
另外,在多线程环境中,可能会出现线程安全问题。

所以,我有一些建议。
首先,尽可能少地使用全局变量,仅将它们用于常量或简单条件标志。
其次,如果一定要使用的话,记得处理好线程安全问题。
最后,不要让这增加代码的复杂性。
尝试使用方法参数来传递数据,或者使用单例或依赖注入等设计模式。

而且,测试这个东西很困难。

最后,如果不想使用公共静态变量,可以考虑其他解决方案,例如参数传递、单例模式或依赖注入。

总之,这个东西用起来很方便,但是你应该小心使用它,确保它不会成为你的问题。

类名加变量名是什么意思

Java实例化:使用类名和变量名,使用new。
Python类变量:类名点属性名。
由所有实例共享。
Python实例变量:对象名,点属性名,每个实例都是独立的。
Python 局部变量:在方法内定义并且仅在该方法内有效。
根据语言的不同,类和变量名称的使用方式也不同,但重点是创建或访问对象。

Java中类的命名规范是怎样的?

说白了,Java的命名约定就像是编写代码时的“业务规则”。
如果您继续执行,代码将会更加清晰。
如果你不关注,就会有一条消息。

为了扩展,所有信封名称必须小写并用句点分隔,例如 java.util.logging。
去年我们拿回那个项目时,由于包名混合,IDE 抛出了 2 00 多个错误,花了半天时间才解决。
类名和接口名采用“驼峰式大小写”,如 SpringBootApplication。
很多人不重视这一点。
去年,一位同事编写了一个 verapplication,运行时报告错误,说找不到该类。
方法名和变量名都采用“驼峰式大小写”来计算Total Amount,但有一点特别:方法名的第一个单词必须是单词。
我的一个同事去年写了一个项目来计算totalAmount。
虽然可以运行,但是显得笨拙,所以直接改用重构。

一开始我以为常量名会全部大写,但后来发现我错了。
像 MAX_WIDTH 这样的简单常量就可以,但是像 DEFAULT_TIMEOUT_SECONDS 一样,如果写入 DEFAULT_TIMEOUT_SECONDS 则更容易阅读。
这就是我们去年写定时任务模块时所做的。

警告:将变量名写为数据过于笼统。
去年,一位同事写了数据来替换用户信息。
但后来有一个请求最丰富资源的信息,所以直接改了变量名,导致了5 00多行代码报错。
说实话,这确实是一个骗局。