最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android代碼塊執(zhí)行順序分析總結(jié)

 更新時間:2017年12月19日 10:09:47   作者:翻滾吧李博  
本篇文章主要介紹了Android代碼塊執(zhí)行順序分析總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

本文介紹了Android代碼塊執(zhí)行順序分析總結(jié),分享給大家,具體如下:

子類、父類變量,代碼塊,以及構(gòu)造方法的加載順序,是我們在程序開發(fā)中時不時遇到的一個問題,也是比較容易混淆的。

基礎(chǔ)準(zhǔn)備:

  1. 變量: 成員變量(叫類變量、實(shí)例變量)和局部變量
  2. 方法: 成員方法和構(gòu)造方法
  3. 代碼塊:普通代碼塊、構(gòu)造代碼塊、靜態(tài)代碼塊、同步代碼塊

測試的父類:

public class ParentClass {
  public static String name = "爸爸";
  public int age = 40;
  public ParentClass(){
    System.out.println("父類構(gòu)造函數(shù)");
  }

  //非靜態(tài)代碼塊
  {
    System.out.println("父類非靜態(tài)代碼塊" + "---" + age);
  }

  //靜態(tài)代碼塊
  static{
    System.out.println("父類靜態(tài)代碼塊" + "---" + name);
  }
}

測試的子類:

public class ChildrenClass extends ParentClass{
  public static String name = "兒子";
  public int age = 15;
  public ChildrenClass(){
    System.out.println("子類構(gòu)造函數(shù)");
  }
  {
    System.out.println("子類非靜態(tài)代碼塊" + "---" + age);
  }

  static {
    System.out.println("子類靜態(tài)代碼塊" + "---" + name);
  }

}

執(zhí)行new ChildrenClass()結(jié)果:


結(jié)果分析:

父類靜態(tài)代碼塊執(zhí)行前,父類靜態(tài)變量就已經(jīng)執(zhí)行了。

父類非靜態(tài)代碼塊執(zhí)行前,父類非靜態(tài)變量就已經(jīng)執(zhí)行了。

上面結(jié)論子類同理。

代碼塊執(zhí)行順序總結(jié):

父類的靜態(tài)成員變量—->父類靜態(tài)代碼塊—->子類靜態(tài)成員變量—->子類靜態(tài)代碼塊—>父類非靜態(tài)變量—->父類非靜態(tài)代碼塊—->父類構(gòu)造方法—->子類非靜態(tài)變量—->子類非靜態(tài)代碼塊—->子類構(gòu)造方法。

另外關(guān)于代碼塊的總結(jié):

  1. 在類第一次調(diào)用時,靜態(tài)代碼塊只執(zhí)行這一次。
  2. 靜態(tài)代碼塊和靜態(tài)方法只能調(diào)用靜態(tài)變量;
  3. 非靜態(tài)代碼塊和非靜態(tài)方法可以調(diào)用任何(靜態(tài)+非靜態(tài))變量。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

寿宁县| 岳西县| 即墨市| 锡林郭勒盟| 繁昌县| 将乐县| 晋江市| 望江县| 莱阳市| 万源市| 隆安县| 海兴县| 鸡东县| 建始县| 泸西县| 两当县| 沁源县| 镇坪县| 德令哈市| 宣城市| 社旗县| 清新县| 盐源县| 延吉市| 虞城县| 和平区| 宣化县| 嵩明县| 壤塘县| 铁岭市| 乌拉特前旗| 元谋县| 呼玛县| 绵阳市| 中牟县| 福安市| 新沂市| 隆昌县| 敖汉旗| 全州县| 海安县|