<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Java父類子類加載順序

      父類如下:

      package zzm.java.extendsDemo;
      
      public class Parent {
          /**
           * 會報錯,因為static按順序進行加載的
           */
      //    static {
      //        System.out.println("i="+i);
      //    }
      
          public static int i = 0;
      
          {
              i++;
              System.out.println("i(非靜態)="+i);
          }
      
          static {
              i = i+1;
              System.out.println("i(靜態)="+i);
          }
      
          {
              i++;
              System.out.println("i(非靜態)="+i);
          }
      
          public Parent(){
              i++;
              System.out.println("i(構造方法)="+i);
          }
      
      }

      子類如下:

      package zzm.java.extendsDemo;
      
      public class Child extends Parent{
          public static int i = 0;
      
          {
              i++;
              System.out.println("i(子類非靜態)="+i);
          }
      
          static {
              i = i+1;
              System.out.println("i(子類靜態)="+i);
          }
      
          {
              i++;
              System.out.println("i(子類非靜態)="+i);
          }
      
          public Child(){
              //顯示調用父類構造方法,必須放在最前面,和不寫是一樣的
              super();
              i++;
              System.out.println("i(子類構造方法)="+i);
          }
      
          public static void main(String[] args) {
             Child child1 =  new Child();
             Child child2 = new Child();
          }
      }

      猜猜輸出是啥?

      下面是打印

      i(靜態)=1
      i(子類靜態)=1
      i(非靜態)=2
      i(非靜態)=3
      i(構造方法)=4
      i(子類非靜態)=2
      i(子類非靜態)=3
      i(子類構造方法)=4
      i(非靜態)=5
      i(非靜態)=6
      i(構造方法)=7
      i(子類非靜態)=5
      i(子類非靜態)=6
      i(子類構造方法)=7

      由此我們得出下面幾個結論:

      1、先執行父類的靜態變量、靜態方法塊,誰在前面誰先執行

      2、在執行子類的靜態變量、靜態方法塊,也是一樣,誰在前面誰先執行

      3、在執行父類的非靜態變量、非靜態方法塊,接著執行對應子類

      4、最后在執行父類構造方法、在執行子類構造方法

      5、當類已經被加載后,第二次加載時不會在執行靜態變量的賦值,已經靜態方法塊,但是會執行非靜態變量的賦值和非靜態方法塊。

      因為一個靜態變量的初始化是在類加載的準備階段,這個階段會執行靜態變量的賦值以及相關的靜態代碼塊,是<client>()方法執行的,執行時機是類加載的時候

      而非靜態方法,是由<init>()方法執行的,執行時間是構造實例的時候,隨著實例化時一起放在堆上

      posted @ 2022-08-01 00:25  一花一世界!  閱讀(1075)  評論(1)    收藏  舉報
      主站蜘蛛池模板: 国产成人精品日本亚洲| 国产av熟女一区二区三区| 波多野结衣美乳人妻hd电影欧美| 天天夜碰日日摸日日澡性色av| 欧洲精品码一区二区三区| 欧美色丁香| 久久国产精品久久久久久| 国产高清午夜人成在线观看,| 国产乱码精品一区二区上| 无码人妻aⅴ一区二区三区蜜桃| 亚洲日韩乱码一区二区三区四区| 和艳妇在厨房好爽在线观看 | 日韩国产精品中文字幕| 国产亚洲精品久久综合阿香| 国产一区二区不卡在线| 台东市| 中文日产幕无线码一区中文| 久久69国产精品久久69软件| 美女自卫慰黄网站| 亚洲国产av一区二区| 亚洲精品国产字幕久久麻豆| 国产精品无遮挡又爽又黄| 羞羞影院午夜男女爽爽免费视频| 九九热精品免费在线视频| 国产成人综合欧美精品久久| 亚洲精品一区二区口爆| 中文国产成人精品久久一| 免费看美女被靠到爽的视频| 国产一区二区不卡精品视频| 中文字幕日韩有码av| 亚洲爆乳WWW无码专区| 亚洲精品三区四区成人少| 91久久精品美女高潮不断| 欧美成人h精品网站| 精品亚洲国产成人av| 国产av成人精品播放| 国产精品久久久午夜夜伦鲁鲁| 亚洲国产综合一区二区精品| 日韩av一区二区三区不卡| 一区二区三区岛国av毛片| 久久久综合九色合综|