Java 继承的重点(一定要掌握)

打印 上一主题 下一主题

主题 1057|帖子 1057|积分 3171

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
在看集合源码的时候,因为对一些知识点有些混淆,导致看源码比较吃力。所以重新回顾一下面向对象的继承和多态,顺便记录一下重点。
继承


  • 子类会继承父类的所有属性和方法,但私有属性和方法在子类不能直接访问,需要通过父类提供的公共方法访问;
  • 子类必须调用父类的构造器,完成父类的初始化(创建子类对象时会调用父类的无参构造器,其实在子类的无参构造方法的第一行默认有super() );
  • 创建子类对象时,不管子类使用有参构造还是无参构造,默认情况下总会去调用父类的无参构造。如果父类没有写无参构造器(当父类写了有参构造器而没写无参构造器,那么无参构造器就没有了),那么子类的构造器要用super()指定使用父类的什么构造器,否则编译不通过;
  • 如果想要指定调用父类的某个构造器,则需要用super()显式调用。调用super()时必须要放在第一行,而this()也是必须放在第一行,所以这两个方法只能用一个,不能共存;
  • Object类是所有类的父类,因此创建子类对象调用父类构造器时,会一直向上追溯到Object类;
  • 当子类对象访问某个属性/方法时:
    (1) 首先看子类对象本身有没有该属性/方法,如果有并且是可以访问的,那么直接访问
    (2) 如果子类没有该属性/方法,看父类有没有该属性/方法,如果父类有并且是可以访问的,那么就访问
    (3) 同理,如果父类也没有,则一直向上找,直到Object类
后续还会继续更新总结多态的知识重点
有不懂的地方可以在下面评论,随时交流~

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

西河刘卡车医

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表