Java继承

在Java中一直使用的很频繁的继承,从没去细想过继承后子类父类加载情况,写一个作为记录

先看一下一个类加载的时候是怎么加载的:

静态变量-》静态语句块(可以有多个静态语句块)-》非静态变量-》非静态语句块-》构造方法

一个类的非静态方法,静态方法只有发生调用的时候才会加载,区别在于静态直接类名加方法即可调用,非静态需要new类以后才能调用非静态方法

在有继承的时候,加载顺序为:父类静态变量-》父类静态语句块-》子类静态变量-》子类静态语句块-》父类非静态变量-》父类非静态语句块-》父类构造方法-》子类非静态变量-》子类非静态语句块-》子类构造方法

一个类是单继承,但是有例外,接口是可以多继承的,一个类如果既有继承又有实现接口,就是先继承后实现

谈到继承就需要知道重载和重写,重载是一个类多个方法名称一样,但是返回值或者入参是不一样的;Java的重写,就是重写父类方法

要留意的是:在子类的构造方法中使用super()来显示调用父类的构造方法,super()必须写在子类构造方法第一行,否则编译是不会通过的;但是super()和this()是不需要一定放在构造方法的第一行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值