java面试题网

普通会员

115

帖子

83

回复

169

积分

楼主
发表于 2019-09-24 15:40:46 | 查看: 5122| 回复: 0

静态变量和实例变量的区别?静态的优点和弊端?什么时候使用静态

静态变量和实例变量的区别?

静态变量属于类,实例变量依存于某一实例

查看详细:折叠

静态变量: 是被 static 修饰符修饰的变量,也称为类变量,它属于类,不属于类的任何一个对象,一个类不管创建多少个对象,静态变量在内存中有且仅有一个拷贝;

实例变量: 必须依存于某一实例,需要先创建对象然后通过对象才能访问到它。静态变量可以实现让多个对象共享内存。

静态的优点和弊端

  • 优点:
    1. 对对象的共享数据进行单独空间的存储,节省内存,没有必要每个对象都存储一份
    2. 可直接被类名调用
  • 弊端:
    1. 生命周期过长,随着类的消失而消失
    2. 访问出现权限,即静态虽好但只能访问静态

什么使用使用静态?

  1. 当所有对象共享某个数据的时候,就把这个成员变量定义为静态修饰的。
  2. 当某个方法没有访问该类中的非静态成员,就可以把这个方法定义为静态修饰。

静态的生命周期比较长,所以一般不推荐使用。


文章来自www.wityx.com,转载请注明出处!原文地址http://www.wityx.com/post/1302_1_1.html


java面试题交流群:327440556

您需要登录后才可以回帖 登录 | 立即注册

java面试题网www.wuliaokankan.cnjava建站系统提供技术支持V2.1 网站地图 © 2016-2018