java 类中静态变量 和 单例模式下对象中的成员变量 有什么区别?使用场景是什么?
1个回答
展开全部
java 类中静态变量:
假如这个静态变量是一个SQL语句,不同的实例可以通过类名调用这个SQL语句的静态变量。
这个静态变量是在加载类的时候一起被加载到内存里的,并且只加载一次。
相反,如果这个SQL语句不是静态变量,100个实例就有100个变量,尽管变量的值都是这个SQL语句。
同时要注意,如果静态变量不用final修饰,它是可以改变的。
单例模式下对象中的成员变量:
这个成员变量实在建立实例的时候才初始化的,而不是在加载类到内存的时候。
比如通信端口,单例以避免一个通信端口同时被两个请求同时调用。
假如这个静态变量是一个SQL语句,不同的实例可以通过类名调用这个SQL语句的静态变量。
这个静态变量是在加载类的时候一起被加载到内存里的,并且只加载一次。
相反,如果这个SQL语句不是静态变量,100个实例就有100个变量,尽管变量的值都是这个SQL语句。
同时要注意,如果静态变量不用final修饰,它是可以改变的。
单例模式下对象中的成员变量:
这个成员变量实在建立实例的时候才初始化的,而不是在加载类到内存的时候。
比如通信端口,单例以避免一个通信端口同时被两个请求同时调用。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询