亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Java 類中類屬性和對象屬性的初始化順序

2019-11-18 10:43:59
字體:
來源:轉載
供稿:網友

  java 類中類屬性 (static 變量) 和對象屬性 (非 static 變量) 的初始化順序可以用如下程序測試:
  
  /**
  * @(#) Test.java
  * @author fancy
  */
  
  public class Test {
  
  static String a = "string-a";
  static String b;
  
  String c = "stirng-c";
  String d;
  
  static {
    b = "string-b";
  printStatic("after static");
  }
  
  public static void printStatic(String title) {
  System.out.println("---------" + title + "---------");
  System.out.println("a = /"" + a + "/"");
  System.out.println("b = /"" + b + "/"");
  }
  
  public Test() {
  print("before constrUCtor");
  d = "string-d";
  print("after constructor");
  }
  
  public void print(String title) {
  System.out.println("---------" + title + "---------");
  System.out.println("a = /"" + a + "/"");
  System.out.println("b = /"" + b + "/"");
  System.out.println("c = /"" + c + "/"");
  System.out.println("d = /"" + d + "/"");
  }
  
  public static void main(String[] args) {
  new Test();
  }
  
  }
  
  首先,我把 main() 方法注釋掉,運行結果如下:
  
  ---------before static---------
  a = "string-a"
  b = "null"
  ---------after static---------
  a = "string-a"
  b = "string-b"
  java.lang.NoSuchMethodError: main
  Exception in thread "main"
  Process completed.
  
  然后,取消對 main() 方法的注釋,運行結果如下:
  
  ---------before static---------
  a = "string-a"
  b = "null"
  ---------after static---------
  a = "string-a"
  b = "string-b"
  ---------before constructor---------
  a = "string-a"
  b = "string-b"
  c = "stirng-c"
  d = "null"
  ---------after constructor---------
  a = "string-a"
  b = "string-b"
  c = "stirng-c"
  d = "string-d"
  
  由此可以看出 Java 類屬性和對象屬性的初始化順序如下:
  
 ?、?類屬性 (靜態變量) 定義時的初始化,如上例的 static String a = "string-a";
 ?、?static 塊中的初始化代碼,如上例 static {} 中的 b = "string-b";
 ?、?對象屬性 (非靜態變量) 定義時的初始化,如上例的 String c = "stirng-c";
  ④ 構造方法 (函數) 中的初始化代碼,如上例構造方法中的 d = "string-d";
  
  在此過程中 ② 和 ③ 的順序無所確定,因為在靜態塊中無法打印出非靜態變量。同樣是因為這個原因,知道他們的順序對我們寫程序也毫無幫助。再因為類成員 (靜態成員) 是在第一次使用到類的時候就進行了相應的初始化,而對象成員 (非靜態成員) 則需要生成類實例 (即對象) 時才能初始化,所以我把 ③ 排在了 ② 的后面。再申明一次,它們究竟誰先誰后,從代碼上是不能確定的,恐怕需要去研究一下 JVM (Java 虛擬機) 的執行過程才行。
  
  
  以下是一些回帖的討論:
  我對狂人教程"對象成員 (非靜態成員) 則需要生成類實例 (即對象) 時才能初始化"有些看法!例如你在例程中定義的兩個對象成員變量String c = "stirng-c";
  String d;我認為當程序執行這個Test類的時候,成員變量(不包括構造函數)和類成員變量一樣,都要裝載到內存。這樣對象成員變量就可以被構造函數所調用。但是究竟靜態變量和非靜態變量哪個先執行可以看在代碼中的先后順序,但是這對于編寫代碼來說并沒有多大的用處!
  
  static
  {
  printStatic("before static");
  b = "string-b";
  printStatic("after static");
  }在類別第一次使用而載入時執行,且只執行一次。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久国产精品久久久| 中文字幕精品网| 国产欧美日韩综合精品| 久久激情视频久久| 亚洲天堂男人天堂| 久久久亚洲国产天美传媒修理工| 欧美伊久线香蕉线新在线| 欧美高清视频一区二区| 久久艹在线视频| 国产精品三级久久久久久电影| 成人精品视频99在线观看免费| 国产精品偷伦免费视频观看的| 亚洲福利在线观看| 亚洲丝袜一区在线| 欧美大片欧美激情性色a∨久久| 日韩视频免费大全中文字幕| 日韩av在线免费观看| 成人欧美一区二区三区在线湿哒哒| 国内精品久久久久久中文字幕| 亚洲精品视频免费在线观看| 欧美视频在线视频| 亚洲电影免费在线观看| 亚洲最新av在线网站| 国产日韩中文字幕| 中文字幕亚洲国产| 亚洲大尺度美女在线| 国产99久久精品一区二区永久免费| 欧美在线观看一区二区三区| 中文字幕亚洲一区二区三区| 亚洲精品日产aⅴ| 亚洲性视频网站| 欧美小视频在线观看| 中文字幕久久久av一区| 国产精品久久久久久久app| 奇米4444一区二区三区| 91久久久久久久久久久久久| 51精品在线观看| 午夜精品视频在线| 国产日韩欧美夫妻视频在线观看| 亚洲精品久久久久| 国产精品白丝jk喷水视频一区| 91在线观看欧美日韩| 久久五月天综合| 欧美国产激情18| 色午夜这里只有精品| 一区二区av在线| 红桃av永久久久| 国产精品视频大全| 精品女厕一区二区三区| 国产综合在线观看视频| 成人综合国产精品| 亚洲免费av片| 欧美疯狂性受xxxxx另类| 国产精品海角社区在线观看| 一区二区福利视频| 97在线视频观看| 色综合伊人色综合网| 精品国产老师黑色丝袜高跟鞋| 中文字幕无线精品亚洲乱码一区| 午夜精品久久久久久久99热| 欧美www视频在线观看| 久久在线免费观看视频| www.亚洲天堂| 亚洲第一网站男人都懂| 91免费版网站入口| 91精品国产综合久久久久久蜜臀| 欧美肥臀大乳一区二区免费视频| 亚洲久久久久久久久久久| 日韩欧美中文第一页| 亚洲摸下面视频| 国产一区二区丝袜高跟鞋图片| 亚洲日本成人女熟在线观看| 日韩欧美国产网站| 夜夜嗨av一区二区三区四区| 最近2019免费中文字幕视频三| 国产精品影院在线观看| 国产一区二区日韩| 欧美国产日本在线| 久久艳片www.17c.com| 久久精品91久久久久久再现| 91久久国产精品91久久性色| 国产精品久久久久久久久久99| 在线不卡国产精品| 精品久久香蕉国产线看观看亚洲| 国产精品盗摄久久久| 久久免费观看视频| 日韩在线观看网站| 国产精品国产福利国产秒拍| 这里只有精品在线观看| 国产精品一二区| 色悠久久久久综合先锋影音下载| 国产精品91在线观看| 欧美激情一区二区三级高清视频| 国产在线播放不卡| 久久韩国免费视频| 97精品视频在线播放| 欧美成人免费观看| 91精品视频免费观看| 性欧美视频videos6一9| 欧美黑人xxxx| 欧美国产日本高清在线| 91亚洲精华国产精华| 色爱av美腿丝袜综合粉嫩av| 庆余年2免费日韩剧观看大牛| 久久精品国产久精国产思思| 77777亚洲午夜久久多人| 日本韩国在线不卡| 国产日韩欧美黄色| 国产日产亚洲精品| 福利视频第一区| 久精品免费视频| 欧美国产日韩一区二区三区| 日韩欧美国产视频| 日本19禁啪啪免费观看www| 91国产一区在线| 国产精品日韩电影| 亚洲欧洲偷拍精品| 欧美精品一二区| 欧美福利在线观看| 久久视频在线视频| 亚洲第一天堂无码专区| 亚洲一区二区三区xxx视频| 国产精品色婷婷视频| 一本色道久久88综合亚洲精品ⅰ| 亚洲大胆人体视频| 精品国产老师黑色丝袜高跟鞋| 亚洲欧美国产日韩中文字幕| 日韩av色在线| 日韩欧美亚洲一二三区| 日韩av观看网址| 91亚洲永久免费精品| 国产成人在线一区| 国产视频精品va久久久久久| 久久国产精品亚洲| 成人精品久久av网站| 大荫蒂欧美视频另类xxxx| 久久精品中文字幕电影| 日韩在线观看免费全集电视剧网站| 国产日韩在线看片| 国产不卡av在线免费观看| 国产精品久久久久久久久久免费| 久久久欧美精品| 精品视频在线播放色网色视频| 亚洲精品成人久久电影| 亚洲图片制服诱惑| 中文字幕最新精品| 2018日韩中文字幕| 欧美成aaa人片在线观看蜜臀| 最近2019年手机中文字幕| 成人在线小视频| 狠狠久久亚洲欧美专区| 欧美又大粗又爽又黄大片视频| 欧美理论电影网| 国产精品视频男人的天堂| 精品二区三区线观看| 国产福利精品视频| 尤物九九久久国产精品的分类| 欧美日韩国产在线播放| 亚洲免费精彩视频| 日韩欧美在线播放| 久久香蕉频线观| 色一区av在线| 成人激情av在线| 欧洲日韩成人av|