1.多型
1)重寫:發生父類和子類之間 子類重寫父類的方法 新增自己新的功能
2)過載:發在乙個類中 方法的名字相同 引數列表不同(個數 型別 順序)
和返回值無關(構造方法過載 和 成員方法過載)
3)多型的執行機制:
在類編譯階段,編譯器會檢查型別是否匹配(檢查宣告型別、方法等)。
在執行階段,
jvm會呼叫例項的對應方法,先檢查父類方法,後檢查子類方法。
然後編譯器會檢查例項宣告的型別。
4)舉例
父類:public class shape
}子類:
public class rectangle extends shape
// area
public double area()
public double area(int l, int h)
}2.static
1)可以修飾變數 方法 內部類 被稱為 靜態變數 靜態方法 靜態內部類
2)在類裡定義static的屬性 方法 是與類相關的 和物件無關 所以也稱 類屬性
類方法3)可以通過類名去呼叫靜態的屬性和靜態方法 類名.方法名/屬性名
4) 靜態屬性是屬於類的 所以是所有物件共享的 普通資料成員是每個物件都有自已
的一 套資料成員
5)靜態成員的初始化是在類載入的時候 普通資料成員初始化new物件的時候
程式執行是先載入類 碰到 new物件的時候才會初始化普通資料成員
6)靜態方法裡不能使用非靜態的變數
非靜態的方法裡可以使用靜態變數
3.單例模式(singleton)
實現功能 :無論在任何情況下都得到類的乙個例項
特點:1.定義乙個本類 私有靜態屬性
2.構造方法似有
3.提供乙個公有的對外訪問的方法
**:public class singleton
//對外訪問的方法 獲取singleton類物件的唯一途徑
public static singleton getinstance()
return ton; }}
Systemverilog 第八課 物件導向程式設計
terminology class 類,藍圖 object 物件,表示具體的物件 handle 控制代碼,指向物件的指標 位址 properties 屬性,類當中定義的變數 methods 方法,控制屬性的方法 sv當中盡量不要寫always,而是用task和function處理任務的過程 偏軟體思...
第八課 混合
第八課 混合 opengl中的混色 在opengl中實現混色的步驟類似於我們以前提到的opengl過程。接著設定公式,並在繪製透明物件時關閉寫深度快取。因為我們想在半透明的圖形背後繪製 物件。這不是正確的混色方法,但絕大多數時候這種做法在簡單的專案中都工作的很好。rui martins 的補充 正確...
第八課 陣列
1 宣告 int arr string str 2 分配空間 arr new int 5 3 宣告同時分配記憶體 int arr new int 5 4 初始化 int arr new int 5 int arr2 1 宣告 int arr string str 2 分配空間 1 直接為每一維分配空...