国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java 初始化與清理(5)

cheng10 / 1794人閱讀

摘要:隨著計算機革命的發展,不安全的編程方式已逐漸成為編程代價高昂的主因之一。

隨著計算機革命的發展,“不安全”的編程方式已逐漸成為編程代價高昂的主因之一。

1.用構造器確保初始化

構造器:在創建對象時被自動調用的特殊方法.

構造器命名問題:1.所取得任何名字可能與類的某個成員命名沖突;2.調用構造器是編譯器的責任,所以應該讓編譯器知道該調用哪個方法.

構造器命名:與類名相同,所以"每個方法首字母小寫"的編程風格不適用于構造器.

構造器沒有返回值(new表達式返回了對新建對象的引用,但構造器本省并沒有返回任何值).

2.方法重載

目的:為了讓方法名相同而形式參數不同的構造器同時存在.

方法重載是構造器所必需的,但亦可用于其他方法.

區分:參數類型列表,參數順序(代碼難以維護),涉及基本類型的重載(易混淆),返回值(為了副作用而調用就會忽略其返回值 ×)

3.默認構造器

如果類中沒有構造器,編譯器會自動創建一個默認構造器.

如果已有構造器,則不會創建.

4.this關鍵字

為了能用簡便,面向對象的語法來編寫代碼,編譯器做了一些幕后工作,他把"所操作對象的引用"作為第一個參數傳給方法(注:一般是通過對象的引用來調用方法,編譯之后通過對象來調用).

只能在方法內部使用,表示對"調用方法的那個對象"的引用.

如果在方法內部,調用同一個類的另一個方法,則不必使用this,直接調用即可.

需要返回當前對象的引用時,return this;.

將當前對象作為參數傳遞給其他對象.

在構造器中調用構造器(只能調用一個,且必須將構造器的調用至于最起始處).

static方法:沒有this的方法.

5.清理:終結處理和垃圾回收

finalize().

對象可能不被垃圾回收.

垃圾回收并不等于"析構".

垃圾回收只與內存有關.

引用計數:常用開說明垃圾收集的工作方式.

復制式回收器:效率低(1,空間大;2,復制).

標記-清掃 模式.

6.成員初始化

局部變量必須進行初始化.

類的數據成員(全局變量),基本類型會默認有一個初始值,對象引用會獲得特殊值null.

指定初始化:定義的時候直接賦值或通過方法調用賦值.

7.構造器初始化

通過構造器來進行初始化(無法阻止自動初始化的進行,它將在構造器調用之前發生).

變量定義的先后順序決定了初始化的順序.

靜態數據初始化:只有在第一個對象創建(或者第一次訪問靜態數據)的時候,才會被初始化,僅執行一次.

顯式的靜態數據初始化:靜態代碼塊.

非靜態實例初始化:普通代碼塊(匿名內部類的chu"shi"hua).

構造器沒有顯式地使用static,但也是靜態方法.

對象的創建過程
1.當詩詞創建對象或者類的靜態方法/靜態域首次被訪問時,Java解釋器查找類路徑,定位.class文件.
2.載入.class,有關靜態初始化的所有動作被執行(首次加載時進行一次).
3.用new操作符創建對象,在堆上為對象分配足夠的存儲空間.
4.存儲空間清零,為對象中的全局變量賦值.
5.執行所有出現于字段定義處的初始化動作.
6.執行構造器.

8.數組初始化

數組:相同類型的,用一個標識符名稱封裝到一起的一個對象序列或基本類型數據序列.通過方括號下標操作符來定義和使用的.

編譯器不允許指定數組的大小.

初始化表達式:由一對花括號括起來的值組成.在這種情況下,存儲空間的分配(等價于使用new)由編譯器負責.

固有成員length,只能訪問不能修改.

可變參數列表.

9.枚舉類型

枚舉類型的實例是常量,按照命名慣例使用大寫字母表示(多個單詞用下劃線隔開).

為了使用enum,需要創建一個該類型的引用,并將其賦值給某個實例.

編譯器自動添加toString(),ordinal()(聲明順序),values()(按聲明順序,產生由常量構成的數組)方法.

與switch配合使用.

END

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/71527.html

相關文章

  • Java編程思想》筆記5.始化清理

    摘要:點擊進入我的博客初始化和清理是編程安全的兩個問題。延續了中的構造器確保初始化,并引入了垃圾回收器管理和釋放內存。用構造方法確保初始化構造方法和類名相同。用于強制進行終結動作。載入該文件,靜態數據進行初始化,執行靜態代碼塊。 點擊進入我的博客 初始化和清理是編程安全的兩個問題。Java延續了C++中的構造器確保初始化,并引入了垃圾回收器管理和釋放內存。 5.1 用構造方法確保初始化 ...

    wangym 評論0 收藏0
  • Java編程思想》筆記8.多態

    摘要:多態的作用是消除類型之間的耦合關系。編寫構造器準則用盡可能簡單的方法使對象進入正常狀態,如果可以的話,避免調用其他方法。 點擊進入我的博客 在面向對象的程序設計語言中,多態是繼數據抽象(封裝)和繼承之后的第三種基本特征。多態通過分離做什么和怎么做,從另一角度將接口和實現分離開來。多態的作用是消除類型之間的耦合關系。 8.1 再論向上轉型 對象既可以作為它自己的本類使用,也可以作為它的...

    chinafgj 評論0 收藏0
  • Java編程思想學習錄(連載之:始化清理

    摘要:注本文首發于公眾號,可長按或掃描下面的小心心來訂閱關于構造器與初始化無參構造器默認構造器自己未寫編譯器幫忙自動創建的若自行定義了構造器無論參數有否,編譯器便停止默認創建動作類里的對象引用默認初始化為,基本類型初始化為構造器也是類的靜態方法四 showImg(https://segmentfault.com/img/remote/1460000015723687); 注: 本文首發于 ...

    betacat 評論0 收藏0
  • 【讀書筆記】JVM垃圾收集內存分配策略

    摘要:堆和方法區只有在程序運行時才能確定內存的使用情況,垃圾回收器所關注的主要就是這部分內存。虛擬機會根據當前系統的運行情況收集性能監控信息,動態調整比率參數以提供最合適的停頓時間或最大的吞吐量。 Tip:內容為對《深入理解Java虛擬機》(周志明 著)第三章內容的總結和筆記。這是第一次拜讀時讀到的一些重點,做個分享,也為后面再次閱讀和實踐做保障。 3.1 概述 程序計數器、虛擬機棧、本地...

    mcterry 評論0 收藏0
  • Java 復用類(7)

    摘要:復用代碼是眾多引入注目的功能之一。但要想成為極具革命性的語言,僅僅能夠復制代碼并對之加以改變是不夠的,它還必須能夠做更多的事情。 復用代碼是Java眾多引入注目的功能之一。但要想成為極具革命性的語言,僅僅能夠復制代碼并對之加以改變是不夠的,它還必須能夠做更多的事情。 1.組合語法 將對象引用置于新類中. 初始化對象引用:1.定義時初始化;2.構造器初始化;3.使用之前(惰性初始化);...

    darkbaby123 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<