欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java中父类方法与子类方法的执行顺序

程序员文章站 2022-05-21 17:10:12
...
JAVA子父类内部程序的执行顺序
******************************************************************
一、父类的静态成员赋值和静态块
二、子类的静态成员赋值和静态块
三、父类的成员赋值和初始化块
四、父类的构造方法
五、子类的成员赋值和初始化块
六、子类的构造方法

*********************************************************************
程序实例:
public class Student2 extends User2{
	static{//静态块
		System.out.println("D");
	}
	{//初始化块
		System.out.println("E");
	}
	public Student2(){
		System.out.println("F");
	}
	public Student2(String userName){
		this.userName = userName;
		System.out.println("Student2 : "+userName);
	}
	public void work(){
		System.out.println(this.userName + "is work");
	}
	public static void main(String[] args) {
		Student2 s = new Student2("zhangsan");
		s.work();
	}
	{//若有两个初始化块,则顺序执行
		System.out.println("G");
	}
}
class User2{
	protected String userName;
	static{
		System.out.println("A");
	}
	{
		System.out.println("B");
	}
	public User2(){
		System.out.println("C");
	}
	public User2(String userName){
		System.out.println("User2 : "+userName);
		this.userName = userName;
	}
	public void work(){
		System.out.println("User2 : work");
	}
}


结果输出为
A
D
B
C
E
G
Student2 : zhangsan
zhangsan is work
相关标签: java