父子类初始化顺序及方法调用
来源:互联网 发布:已备案过期域名查询 编辑:程序博客网 时间:2024/05/22 17:13
记个笔记吧~
父类静态代码块>子类静态代码块>父类非静态代码块>父类构造函数>子类非静态代码块>子类构造函数
public class Parent { public Parent(){ System.out.println("parent constructor method"); staticHH(); } static{ System.out.println("parent static code"); } //非静态代码块 { System.out.println("parent nonStatic code"); } public static void staticHH(){ System.out.println("parent static hh"); } public void hh(){ System.out.println("parent hh"); }}
public class Children extends Parent{ public Children(){ System.out.println("children constructor code"); staticHH(); } static{ System.out.println("children static code"); } //非静态代码块 { System.out.println("children nonStatic code"); } public static void staticHH(){ System.out.println("children static hh"); } public void hh(){ System.out.println("children hh"); } public static void main(String[] args){ Children c = new Children(); /* Parent pc=new Children(); Parent pp=new Parent(); pc.hh(); pp.hh();*/ }}
调用父子类同名方法时,根据初始化方法来决定具体父类还是子类的方法 ,而不是由声明决定
public static void main(String[] args){ //Children c = new Children(); Parent pc=new Children(); Parent pp=new Parent(); pc.hh(); pp.hh(); }
阅读全文
1 0
- 父子类初始化顺序及方法调用
- Swift - 父子继承关系的初始化方法调用顺序
- java中继承期间父子类型的初始化顺序以及重写方法的调用规则
- 父子类初始化的顺序2
- Java类中变量初始化、方法调用的顺序
- 虚基类声明,初始化及调用顺序
- Java类的各种成员初始化顺序如:父子类继承时的静态代码块,普通代码块,静态方法,构造方法,等先后顺序
- JAVA类父子类方法调用关系
- 静态类、静态方法、静态代码块及初始化顺序
- java调用时候的父子类的顺序
- java 父子类 初始化
- js父子页面相互调用变量及方法
- 关于JAVA继承类的静态变量、成员变量、父子类构造方法调用顺序的探讨
- 关于JAVA继承类的静态变量、成员变量、父子类构造方法调用顺序的研究
- Java抽象类及子类方法的调用顺序
- java中类的初始化调用顺序
- C++ 构造函数初始化调用顺序及类函数内部嵌套函数情况
- Java初始化块及构造函数调用顺序
- Linux ES集群服务配置说明
- HBase CURD之Delete
- JSP九大内置对象(三)
- Java后台手机号查看归属地
- 最大子数组
- 父子类初始化顺序及方法调用
- 内存
- cocos2d-x 3.x 事件相关源码接口
- tongue读音解析实例
- 【CSS布局】定位详解(二)
- EntityFramework6中管理DbContext的正确方式(三)【三种DbContext用法】
- struts2中关于同一xml、同一package下namespace与name关系
- Swift 字典
- HashTable 的rehash方法