一个类中的方法加载顺序

xiaoxiao2025-06-04  41

一个类中的方法加载顺序

1 代码

package parent; public class Father { static { System.out.println("父类静态代码块无输出"); } static int a = 1; { a = a + 10; System.out.println("父类构造代码块:a: " + a); } public Father() { a = a + 100; System.out.println("父类构造方法执行,a:" + a); } public void putong() { a = a + 1000; System.out.println("父类普通方法" + a); } static { a = a + 500; System.out.println("父类静态代码块" + a); } public static void staticMethod() { a = a + 10000; System.out.println("父类静态方法a:" + a); } private void putong2() { a = a + 55; System.out.println("父类私有普通方法" + a); } public static void main(String[] args) { Father father = new Father(); System.out.println("================================="); System.out.println("=======无论是普通、静态、私有方法都是在方法调用的时候才会执行"); System.out.println("================================="); father.putong(); staticMethod(); father.putong2(); } }

2. 输出结果

父类静态代码块无输出 父类静态代码块501 父类构造代码块:a: 511 父类构造方法执行,a:611 ================================= =======无论是普通、静态、私有方法都是在方法调用的时候才会执行 ================================= 父类普通方法1611 父类静态方法a:11611 父类私有普通方法11666

3. 总结

在一个类中,初始化得顺序是:

0. 静态代码块和静态变量的初始化顺序 是谁在前谁先加载
1. 静态变量
1.静态代码块
3. 构造代码块
4. 构造方法
5. 普通方法和静态方法都是在方法调用得时候才会执行
如果存在继承关系,类的加载顺序又该如何,看这篇 https://blog.csdn.net/qq_39455116/article/details/83377068

https://blog.csdn.net/qq_39455116/article/details/83377068

转载请注明原文地址: https://www.6miu.com/read-5031289.html

最新回复(0)