永发信息网

java中类变量和实例变量区别(数值的改变)

答案:1  悬赏:50  手机版
解决时间 2021-06-08 05:33
  • 提问者网友:雨不眠的下
  • 2021-06-07 18:30
java中类变量和实例变量区别(数值的改变)
public class A{ static int a = 0; int b = 0;} public class B{ public static void main(String [] args){ A a1 = new A(); A a2 = new A(); a1.a = 3; a1.b = 4; System.out.println(a2.a); System.out.println(a2.b); }} 为什么:a2.a = 3 而 a2.b = 0(没有改变呢?)

最佳答案
  • 五星知识达人网友:七十二街
  • 2021-06-07 19:12

类变量(即静态变量)是全局变量,所有的实例(如你提到的a1、a2)共享的变量.如果你在一个实例中改变了其值,那么所有的实例的这个变量的都会改变,例如 a1.a=10,那么你打印a2.a的值时也是10.而实例变量是每个实例自己独有的变量,互不干扰.就像你上面提到的,如果a1.b=4,打印a2.b还是0,那就说明a2实例中的b还是默认赋值0,并没有赋值4.


我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯