[Java] 有关静态模块与对象模块的执行 →→→→→进入此内容的聊天室

来自 , 2021-04-01, 写在 Java, 查看 139 次.
URL http://www.code666.cn/view/5eac43ac
  1. package fengke.classtest;
  2. /**
  3.  *  有关静态模块与对象模块的内容
  4.  * @author 锋客
  5.  *  结果:
  6.  *    不执行对象模块
  7.  *    不调用无参构造方法
  8.  *   总结:static===只要class被加载  就执行,切只执行一次
  9.  *       对象模块只有在使用构造器前才执行,每一次调用构造器,都会执行一次,执行顺序为书写顺序
  10.  *      
  11.  */
  12.  
  13. public class Entry {
  14.         private static String inforstatic="static属性生成";
  15.         private int num;
  16.         private String infor;
  17.         static{
  18.                 System.out.println("static模块执行了");
  19.         }
  20.         {
  21.                 System.out.println("构造器前的对象模块执行!");
  22.         }
  23.         public Entry() {
  24.                 super();
  25.                 System.out.println("无参的构造器执行!");
  26.         }
  27.         {
  28.                 System.out.println("构造器后的对象模块执行!");
  29.         }
  30.         public Entry(int num, String infor) {
  31.                 super();
  32.                 this.num = num;
  33.                 this.infor = infor;
  34.                 System.out.println("带参数的构造器执行!");
  35.         }
  36.         @Override
  37.         public String toString() {
  38.                 return "Entry [num=" + num + ", infor=" + infor + "]";
  39.         }
  40.        
  41.         public static void main(String[] args) {
  42.                 System.out.println("main执行了");
  43.         }
  44.  
  45. }
  46.  
  47.  
  48.  
  49. package fengke.classtest;
  50. /**
  51.  * 有关静态模块与对象模块的内容
  52.  * @author 锋客
  53.  * Entry entry=null;不会调用Entry这个类
  54.  *
  55.  */
  56. public class ClassTest {
  57.         public static void main(String[] args) {
  58.                 System.out.println("entry1=null的情况下");
  59.                 Entry entry1=null;
  60.                 System.out.println("entry2=new Entry()的情况下");
  61.                 Entry entry2=new Entry(12, "fengke");
  62.                 System.out.println("entry3=new Entry()的情况下");
  63.                 Entry entry3=new Entry();
  64.         }
  65.  
  66. }
  67.  
  68.  

回复 " 有关静态模块与对象模块的执行"

这儿你可以回复上面这条便签

captcha