变量

变量

1. 分类:

局部变量:类的方法中的变量(main和定义的方法)
  1. 局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
  2. 访问修饰符不能用于局部变量;
  3. 局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用;
  4. 局部变量是在栈上分配的。

类变量:独立于方法之外的变量,用 static 修饰(属于类的变量)

  1. 类变量也称为静态变量,在类中以 static 关键字声明,但必须在方法之外;
  2. 无论一个类创建了多少个对象,类只拥有类变量的一份拷贝;
  3. 静态变量在第一次被访问时创建,在程序结束时销毁;
  4. 静态变量除了被声明为常量外很少使用。常量是指声明为public/private,final和static类型的变量;
  5. 静态变量储存在静态存储区。经常被声明为常量,很少单独使用static声明变量(常量初始化后不可改变);
  6. 静态变量可以通过:ClassName.VariableName的方式访问(注意和实例变量区分)。

实例变量:独立于方法之外的变量,不过没有 static 修饰(属于类实例化后产生的对象的变量)

  1. 实例变量可以直接通过变量名访问。
    但在静态方法以及其他类中,就应该使用完全限定名ObejectReference.VariableName;
  2. 实例变量对于类中的方法、构造方法或者语句块是可见的。
    一般情况下应该把实例变量设为私有,通过使用共有的get、set方法对变量进行操作;
  3. 实例变量在对象创建的时候创建,在对象被销毁的时候销毁。

2. 注意:

  1. 变量本质上是程序员跟JVM申请的一块内存空间(用来临时存放数据)。
  2. 变量在申请前要声明数据类型。
  3. 变量在使用前要拥有值。(空指针异常)
  4. 变量常和运算符一起使用。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。