从品牌网站建设到网络营销策划,从策略到执行的一站式服务
这篇文章主要介绍java多态的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
樊城网站建设公司成都创新互联公司,樊城网站设计制作,有大型网站制作公司丰富经验。已为樊城上千余家提供企业网站建设服务。企业网站搭建\外贸网站制作要多少钱,请找那个售后服务好的樊城做网站的公司定做!
首先来看这样的一段代码,其中对于类的定义如下:
class Parent{ public int myValue=100; public void printValue() { System.out.println("Parent.printValue(),myValue="+myValue); } } class Child extends Parent{ public int myValue=200; public void printValue() { System.out.println("Child.printValue(),myValue="+myValue); } }
我们来一个一个的回答问题:
1.运行结果如图
2.对于这个运行结果的解释,第一行第二行都是正常的调用,第三行中,将child赋给了parent 再进行的输出,这时候我们发现结果变成了200 并且输出语句也变了。
第四句,执行了parent.myValue++;但结果并没有改变。第五行中,将parent类强行转换为子类后又进行了自增,结果变成了201.
3.对于这里的分析,我们发现子类赋值给父类是没有问题的,也就是说子类完全可以直接转换成父类。第四行的语句结果还是200,说明他对于myValue的++还是调用了父类中的Value,但最后还是输出了子类的Value.说明子类赋给父类后,只是一部分替代,并不是完全覆盖。第五句里,将父类转换成子类然后进行++,第四句第五句结合起来,可以说明子类赋值给父类,并不是所谓的覆盖,只是把原本的东西给隐藏了罢了。而强制转换后则不同,直接变成了子类。
最后,这其实告诉我们在实际应用中,我们不应该把父类和子类设置成相同的源代码和成员变量,对于程序员在编程时的理解十分不利。
以上是“java多态的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图