美文网首页
Java系列之 - 类的初始化顺序

Java系列之 - 类的初始化顺序

作者: SupKing_a520 | 来源:发表于2020-05-07 19:07 被阅读0次

    一个类中包含如下几类东西,他们前后是有顺序关系的

    • 静态属性:static 开头定义的属性
    • 静态方法块: static {} 圈起来的方法块
    • 普通属性: 未带static定义的属性
    • 普通方法块: {} 圈起来的方法块
    • 构造函数: 类名相同的方法
    • 方法: 普通方法

    普通类

    • 静态变量
    • 静态代码块
    • 普通变量
    • 普通代码块
    • 构造函数

    继承的子类

    • 父类静态变量
    • 父类静态代码块
    • 子类静态变量
    • 子类静态代码块
    • 父类普通变量
    • 父类普通代码块
    • 父类构造函数
    • 子类普通变量
    • 子类普通代码块
    • 子类构造函数

    抽象的实现子类: 接口 - 抽象类 - 实现类

    • 接口静态变量
    • 抽象类静态变量
    • 抽象类静态代码块
    • 实现类静态变量
    • 实现类静态代码块
    • 抽象类普通变量
    • 抽象类普通代码块
    • 抽象类构造函数
    • 实现类普通变量
    • 实现类普通代码块
    • 实现类构造函数

    接口注意

    • 声明的变量都是静态变量并且是final的,所以子类无法修改,并且是固定值不会因为实例而变化
    • 接口中能有静态方法,不能有普通方法,普通方法需要用defalut添加默认实现
    • 接口中的变量必须实例化
    • 接口中没有静态代码块、普通变量、普通代码块、构造函数

    相关文章

      网友评论

          本文标题:Java系列之 - 类的初始化顺序

          本文链接:https://www.haomeiwen.com/subject/zgkzghtx.html