面朝大海,春暖花開

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            12 Posts :: 1 Stories :: 3 Comments :: 0 Trackbacks

          本文是《 JAVA 編程思想》第四章的讀書筆記

          ?

          一、 用構造函數初始化

          1.1、?? 函數的簽名和返回值

          構造函數可以通過不同的函數簽名來進行重載。構造函數沒有返回值,這和返回值為 void 的是不同的

          1.2、?? 構造函數的重載

          如何區分構造函數的不同呢,用不同的函數簽名。函數簽名的順序不同都可以,但是這樣的編程風格是不好的。

          函數的簽名會上升轉型(當沒有合適的函數簽名出現的時候),但是不會窄化轉型,你必須要顯示的進行強制類型轉換。

          不能以 return value 的不同作為重載的標準。

          當程序提供了構造函數以后,系統就不在提供默認的構造函數了。

          This 關鍵字指的是當前對象,有了 this 后,可以在構造函數中以如下的方式調用

          Class?A? {
          ????A?()?
          {…}
          ????A(
          int ?a, char ?b)? {…?}
          ????A(
          int ?a, char ?b, float ?c)? {
          ????????This(a,b);?
          // 注意:只能調用一次
          ????}

          }

          1.3、?? Static 的含義

          你無法在 static 函數中調用 non-static 函數,但是你可以在 non-static 中調用 static 函數。

          二、 類的清理

          JAVA 的垃圾回收機制只能回收 new 出來的對象,但是你的對象不是 new 出來的而獲得的“特殊”內存,那么 JAVA 的垃圾回收就不能處理,這樣就必須用 finalize() 函數來釋放你的“特殊”內存。

          JAVA 的清理方式是先調用你的 finalize() ,然后在下次垃圾回收的時候來清理你的“特殊”內存。

          關鍵的三句話:

          垃圾回收不等于析構;

          你的對象可能不被回收;

          垃圾回收動作只回收內存。

          System.gc() 可以用來強迫終結動作的發生

          posted on 2006-04-09 16:17 面朝大海 閱讀(284) 評論(0)  編輯  收藏 所屬分類: J2SE
          主站蜘蛛池模板: 宁远县| 宁阳县| 福海县| 光泽县| 聊城市| 临洮县| 江阴市| 临桂县| 清苑县| 睢宁县| 南乐县| 武汉市| 城口县| 色达县| 从化市| 剑河县| 广汉市| 夏邑县| 修水县| 汪清县| 新绛县| 西和县| 汝城县| 西乌珠穆沁旗| 淅川县| 通城县| 台中县| 梧州市| 谢通门县| 老河口市| 阿拉善盟| 大宁县| 安义县| 拉萨市| 外汇| 乌拉特后旗| 五指山市| 库车县| 文水县| 新巴尔虎左旗| 孝昌县|