继承时字段的可见范围

Fields cannot be overridden; they can only be hidden.
字段不会被覆盖,只会被隐藏。如果在子类中声明了与父类中完全同名的字段(与该字段是否相同类型无关),其父类中的该同名字段仍然存在,但是现在不能直接被子类使用,而需要使用super.fieldName。
当通过一个对象的引用调用一个方法时,该方法为对象的实际类中的实现,不管是通过父类引用还是子类引用,调用的方法都是子类中的实现。

当访问一个字段时,与调用方法不同,此时该字段是与该对象的引用有关的。当使用父类的引用去访问字段时,得到的是父类中该字段的值;当使用子类的引用去访问字段时,得到的是子类中该字段的值。

可以参考如下示例:
  1. class SuperShow {
  2.     public String str = "SuperStr";

  3.     public void show() {
  4.          System.out.println("Super.show: " + str);
  5.     }
  6. }

  7. class ExtendShow extends SuperShow {
  8.     public String str = "ExtendStr";

  9.     public void show() {
  10.          System.out.println("Extend.show: " + str);

  11.     }

  12.     public static void main(String[] args) {
  13.         ExtendShow ext = new ExtendShow();
  14.         SuperShow sup = ext;
  15.         sup.show();
  16.         ext.show();
  17.         System.out.println("sup.str = " + sup.str);
  18.         System.out.println("ext.str = " + ext.str);
  19.     }
  20. }


输出结果为:
Extend.show: ExtendStr
Extend.show: ExtendStr
sup.str = SuperStr
ext.str = ExtendStr
///
一个对象,有两个指向它的引用,一个是 ExtendShow类型,一个是 SuperShow类型。
调用show()方法时,会判断该对象的实际类型,该对象实际为
ExtendShow类型,所以执行的show()方法也是 ExtendShow类中定义的方法。
对于str字段的访问与指向该对象的引用的类型有关,
sup.str取得的是 SuperShow类中的str值,而 ext.str取得的是 ExtendShow类中的str值。方法里面使用的字段是在定义该方法的类中声明的,如果没有声明,则是继承而来的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随与博主沟通,博主会及解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值