java中类变量和实例变量

版权声明:转载请注明文章出处,否则不得转载! https://blog.csdn.net/hanxiaoyong_/article/details/88846755

java中所有的变量分为:(1)成员变量和(2)局部变量。

(1)成员变量包括:

  a) 实例变量

  b)类变量(以static修饰)

区别:

     访问:实例变量是通过定义类的对象来访问。类变量可以通过类或类对象来访问。

     生存周期  :实例变量与类对象生存周期共存亡。类变量与类共存亡。

     变量修改:多个对象指向不同的实例变量堆内存,即实例变量的值只与对象相关。多个对象指向同一个类变量的堆内存,即类变量的值与类对象无关,为最后一次修改的值。

例:

  calss Tree

  public String name;

  public static int age;

}

访问: 

Tree a1 = new Tree();

Tree a2 = new Tree();

a1.name = "苹果树";

a2.name = "橘子树";

a1. age = 20;

a2.age = 60;

 其中,name的值为:a1.name = "苹果树",a2.name = "橘子树"。

        age= 60。

(2)局部变量

a)形参(函数形参)

b)方法局部变量(在方法内定义)

c)代码块局部变量(在代码快内定义)

上述各种局部变量参数的生存周期不同。尽量使用局部作用范围小的变量,这样可以使其在程序内存中停留的时间变短,提高程序运行速度。

注:Java允许局部变量和成员变量同名,如果方法里的局部变量和成员名相同,局部变量会覆盖成员变量,若要在这个方法里使用成员变量,可使用this来调用成员变量。

猜你喜欢

转载自blog.csdn.net/hanxiaoyong_/article/details/88846755