为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

再去西藏 2015-02-13 20:13:48
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); } }
查看完整描述

1 回答

?
仗剑闯江湖

TA贡献6条经验 获得超0个赞

run()方法输出语句的a指的是当前对象的a属性,而非你run()里创建的对象s3的a属性,而调用run()方法的对象是main方法里创建的那个对象s3。

查看完整回答
反对 回复 2015-02-13
  • 1 回答
  • 0 关注
  • 1508 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信