package fengke.classtest; /** * 有关静态模块与对象模块的内容 * @author 锋客 * 结果: * 不执行对象模块 * 不调用无参构造方法 * 总结:static===只要class被加载 就执行,切只执行一次 * 对象模块只有在使用构造器前才执行,每一次调用构造器,都会执行一次,执行顺序为书写顺序 * */ public class Entry { private static String inforstatic="static属性生成"; private int num; private String infor; static{ System.out.println("static模块执行了"); } { System.out.println("构造器前的对象模块执行!"); } public Entry() { super(); System.out.println("无参的构造器执行!"); } { System.out.println("构造器后的对象模块执行!"); } public Entry(int num, String infor) { super(); this.num = num; this.infor = infor; System.out.println("带参数的构造器执行!"); } @Override public String toString() { return "Entry [num=" + num + ", infor=" + infor + "]"; } public static void main(String[] args) { System.out.println("main执行了"); } } package fengke.classtest; /** * 有关静态模块与对象模块的内容 * @author 锋客 * Entry entry=null;不会调用Entry这个类 * */ public class ClassTest { public static void main(String[] args) { System.out.println("entry1=null的情况下"); Entry entry1=null; System.out.println("entry2=new Entry()的情况下"); Entry entry2=new Entry(12, "fengke"); System.out.println("entry3=new Entry()的情况下"); Entry entry3=new Entry(); } }