java初始化顺序

来源:互联网 发布:linux top命令进程状态 编辑:程序博客网 时间:2024/05/21 11:01

例如以下代码:

package chapter5;public class Demo1One {private String username = "XXXX";private int age = 23;private static String password = "4321";public Demo1One( String username , int age , String password){this.username = username;this.age = age;this.password = password;}public void printInfo(){System.out.println("Username:"+username+"age:"+age+"password:"+password);}public static void main(String[] args) {new Demo1One("google", 20,"1234").printInfo();}}
程序一开始先运行:     private static String password = "0721"; 这行代码再进入main,运行     new Demo1One("google", 20,"1234").printInfo();但是在运行上一行程序时先初始化username和age变量,再运行     new Demo1One("google", 20,"1234");说明static 在类加载之前就初始化了,然后跳到main,如果我们接着new 一个对象,jvm会先初始化类的成员变量


static>自动初始化>构造器

原创粉丝点击