1. 程式人生 > >面向物件第四章

面向物件第四章

1.package: 1)作用:避免類名的衝突 2)包名可以有層次結構 3)類的全稱: 包名.類名,同包中的類不能同名 4)建議:包名所有字母都小寫 import: 1)同包中的類可以直接訪問, 不同包中的類不能直接訪問,想訪問有如下兩種方式: 1.1)先import宣告類再直接使用類------建議 1.2)類的全稱------------------------太繁瑣、不建議 2.訪問控制修飾符: 1)public:公開的, 任何類 2)private:私有的, 本類 3)protected:受保護的, 本類、派生類、同包類 4)預設的:什麼也不寫, 本類、同包類 說明: 1)類的訪問修飾符只能是public或預設的 2)類中成員的訪問修飾符如上四種都可以 3.final:最終的、不可改變的----應用率低 1)修飾變數:變數不能被改變 2)修飾方法:方法不能被重寫 3)修飾類:類不能被繼承 4.static:靜態的 1)靜態變數: 1.1)由static修飾 1.2)屬於類的,儲存在方法區中,只有一份 1.3)常常通過類名點來訪問 1.4)何時用:所有物件所共享的資料(圖片、音訊、視訊等) 2)靜態方法: 2.1)由static修飾 2.2)屬於類的,儲存在方法區中,只有一份 2.3)常常通過類名點來訪問 2.4)靜態方法沒有隱式this傳遞, 靜態方法中不能直接訪問例項成員 2.5)何時用:方法的操作僅與引數相關而與物件無關 3)靜態塊: 3.1)屬於類的,在類被載入期間自動執行, 類只被載入一次,所以靜態塊只執行一次 3.2)何時用:用於載入/初始化靜態資源(圖片、音訊、視訊等) 記憶體管理: 1)堆:new出來的物件(包括例項變數) 2)棧:區域性變數(包括方法的引數) 3)方法區:.class位元組碼檔案(包括方法、靜態變數) 成員變數: 1)例項變數:沒有static修飾,屬於物件的,儲存在堆中, 有幾個物件就有幾份 通過物件名點來訪問 2)靜態變數:由static修飾,屬於類的,儲存在方法區中, 只有一份 通過類名點來訪問 class Aoo{ int a; //例項變數 static int b; //靜態變數 } 資料:私有(派生類的)、受保護(超類的) 行為:公開