今天在看<第一行代码Android>时,在看到第二章2.6时,里面的知晓当前是哪一个活动和随时随地退出程序两个章节时,文中涉及到了继承的问题,把我弄蒙了,下面说说自己的理解。
首先创建一个类A
在创建一个类B,B继承A
在创建类C,C继承B
启动项目,我没在C中使用和C的父类B中使用System输出任何东西,但是控制台里却出现了中文
上面说到涉及到的问题和这个类似,因为我是初学者,继承看着有点蒙,明明没在B类中有输出语句,为什么还可以打印出来语句。最后知道把我弄蒙圈的罪魁祸首是这句话
网上找理解了一下:
super.code(),可以会把父类A中的code()方法里的所有代码加到B类的code方法中(当然它或者它们隐形了,而为它们作掩护的就是super.code())。
——————————————————————————————————————————————————
题外话,前天才开始写博客,因为一个朋友的推荐,把自己的理解写下来,既可以加深记忆,主要是可以定期阅览一下,起到复习的作用。再看<第一行代码Android>之前,我看的是<Java语言程序设计—基础篇>,内时候真的是要多难有多难,一个eclipse下载加上环境变量配置要弄基本一小天,到现在一点点的有了理解的思路,虽然会和正确的意思差很多,但是只要努力我相信一定可以的。在自学中会让我有一种成就感,这种感觉说实在的挺刺激,这也是我选择学习编程的主要原因,没事的时候会脑补一下,像上面的继承,重写。想象成是在战场上两军交战,我方(自己)一个团怎么也攻不下敌方的一个C类排,经过几次侦查之后发现C类排的后方还有一个B类团,集合火力攻打B类团,还是攻不下来。我军都是骁勇善战的将士,而敌方普普通通,再次侦查发现,在B类团所隐秘的code()森林中·还藏着一个A类师不过他们都身着super.code()的隐形服装,在侦查完毕后,我军揭开敌方隐形的面纱,带着满格的怒气值一举干掉了敌方所有敌人。
———————————————————————————————————————————————————