Java中实例方法,静态块和构造函数的执行顺序
静态块是带有static关键字的代码块。通常,这些用于初始化类的静态成员。JVM在加载类时在main方法之前执行静态块。
示例
public class MyClass { static{ System.out.println("Hello this is a static block"); } public static void main(String args[]){ System.out.println("This is main method"); } }
输出结果
Hello this is a static block This is main method
构造函数类似于方法,在创建类的对象时调用,通常用于初始化类的实例变量。构造函数与它们的类同名,并且没有返回类型。
public class MyClass { MyClass(){ System.out.println("你好,这是一个构造函数"); } public static void main(String args[]){ new MyClass(); } }
输出结果
你好,这是一个构造函数
实例方法
这些是类的常规方法(非静态),您需要使用该类的对象来调用它们-
示例
public class MyClass { public void demo(){ System.out.println("你好,这是一个实例方法"); } public static void main(String args[]){ new MyClass().demo(); } }
输出结果
你好,这是一个实例方法
执行顺序
当所有三个类都放在一个类中时,将首先执行静态块,然后执行构造函数,然后执行实例方法。
例
public class ExampleClass { static{ System.out.println("你好,这是静态块"); } ExampleClass(){ System.out.println("你好,这是一个构造函数"); } public static void demo() { System.out.println("你好,这是一个实例方法"); } public static void main(String args[]){ new ExampleClass().demo(); } }
输出结果
你好,这是静态块 你好,这是一个构造函数 你好,这是一个实例方法