为什么输出不是14而是11?

public class S2

{

public static void main(String[] args)

{

S3 s3 = new S3();

s3.run();

}

}

class S3 extends S2

{

int a = 11;

public void run()

{

S3 s3 = new S3();

s3.a = 14;

System.out.println(a);

}

}


再去西藏
浏览 1534回答 1
1回答

仗剑闯江湖

run()方法输出语句的a指的是当前对象的a属性,而非你run()里创建的对象s3的a属性,而调用run()方法的对象是main方法里创建的那个对象s3。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java