Java學習二(面向對象)day010
阿新 • • 發佈:2018-03-30
內存 內存管理 nts 封裝 style 代碼復用 控制 特定 訪問
day10 1.內存管理 1)堆: 1.1)存儲new出來的對象 1.2)垃圾:沒有任何引用所指向的對象 垃圾回收器(GC)不定時到內存中清掃垃圾 回收過程是透明的(看不到的),不一定一發現垃圾就立刻回收 調用System.gc()可以建議虛擬機盡快調度GC來回收垃圾 1.3)實例變量的生命周期 創建對象時存在堆中,對象被回收時一並被回收 1.4)內存泄露:不再使用的對象還沒有被及時回收 建議:不再使用的對象及時將引用設置為null 2)棧: 2.1)正在調用的方法中的局部變量(包括方法的參數) 2.2)調用方法時,在棧中為該方法分配一塊對應的棧幀, 棧幀中存儲方法中的局部變量(包括方法的參數). 方法調用結束時,棧幀被清除,局部變量一並被清除 2.3)局部變量的生命周期: 方法調用時存在棧中,方法結束時與棧幀一並被清除 3)方法區: 3.1)存儲.class字節碼文件(包括方法、靜態變量) 3.2)方法只有一份,通過this來區分具體的訪問對象 面向對象三大特征: 1.封裝: 1)類:封裝的是對象的屬性和行為 2)方法:封裝一段特定的業務邏輯功能 3)訪問控制修飾符:封裝的是具體的訪問權限 2.繼承: 1)作用:代碼復用 2)超類:所以派生類所共有的屬性和行為 接口:部分派生類所共有的行為 派生類:派生類所特有的屬性和行為 3)單一繼承、多接口實現,傳遞性 3.多態: 1)行為多態(所有抽象方法都是多態的) 對象多態(所有對象都是多態的) 2)向上造型、強制類型轉換、intstanceof 3)多態的表現形式: 3.1)重寫:根據對象的不同來多態 3.2)重載:根據參數的不同來多態
Java學習二(面向對象)day010