标签:code 总结 静态成员 初始化顺序 静态 image 内存 区别 使用
public static class Student{ static int age; public static String name; public static void speak() { System.out.println("唱歌??"); } }
public class Student { static int age; public static String name; public static void speak() { System.out.println("唱歌??"); } }
class Person { static { System.out.println("我是静态代码块"); } }
记得博主,在一次面试过程中,面试官出了这道题被吊打了。。。静态代码块、构造代码块、构造函数执行顺序
默认执行顺序为:静态代码块 > 构造代码块 > 构造函数
public class Student { static { System.out.println("我是静态代码块"); } { System.out.println("我是构造代码块"); } public Student() { System.out.println("我是构造函数"); } }
class Teacher { static { System.out.println("我是【老师】静态代码块"); } { System.out.println("我是【老师】构造代码块"); } public Teacher() { System.out.println("我是【老师】构造函数"); } }
public class Student extends Teacher{ static { System.out.println("我是【学生】静态代码块"); } { System.out.println("我是【学生】构造代码块"); } public Student() { System.out.println("我是【学生】构造函数"); } }
public class MyMain { public static void main(String[] args) { Student student=new Student(); } }
打印结果:我是【老师】静态代码块 》我是【学生】静态代码块》我是【老师】构造代码块 》我是【老师】构造函数》我是【学生】构造代码块》我是【学生】构造函数
标签:code 总结 静态成员 初始化顺序 静态 image 内存 区别 使用
原文地址:https://www.cnblogs.com/chenyanbin/p/13376187.html