多型(polymorphic)概述:事物存在的多種形態.
* 1,事物存在的多種形態.
* 2,要有方法重寫
* 3,要有父類引用指向子類物件.
3,要有父類引用指向子類物件.
重寫的注意事項:
b:子類重寫父類方法時,訪問許可權不能更低
重寫的例子:
public
class
base
void test(byte b)
}public
class
testoverriding
extends
base
public
static
void
main(stringagrs)
}
過載的例子:
public class dog
public void bark()//bark()方法是過載方法
public void bark(string m,double l)//注意:過載的方法的返回值都是一樣的,
public void bark(int a,string n)//不能以返回值區分過載方法,而只能以「引數型別」和「類名」來區分
public static void main(string[
] args)
}class son extends father
public
void
fly()
}public
class test
}
好處:
1,提高**的維護性(由繼承保證)
2,提高了**的擴充套件性(由多型保證)
弊端:
1,不能使用子類特有的屬性和行為.
具體舉例說明:
public
class
animal
}public
class
catextends
animal
public
void
eatmouse()
}public
class
dogextend
animal
public
void
watchhome()
}public
class
test
public
static
void
method(animal a)
}}
物件導向(二)
物件導向的特徵之三 多型 多型機制 是物件導向程式設計的乙個重要特徵 多型的特點 是採用同名的方式,根據呼叫方法時傳送的引數的多少以及傳送引數型別的不同,呼叫不同的方法,這樣對於類的編制而言,可以採用同樣的方法獲得不同的行為特徵 多型性可以分為 編譯時多型 和執行時多型 編譯時多型 表現為方法名相同...
物件導向(二)
在類中屬性前加上雙下滑線就是私有化的屬性了,不能在類外直接通過類名呼叫 class dog role dog d dog print dog.role 報錯 我們可以用 dict 看看dog中有那些屬性看看 role變成了什麼 class dog role dog print dog.dict 我們...
物件導向(二)
1.構造方法與set 的區別 前者給屬性進行初始化,後者可以修改屬性值 開發常用,因為靈活 2.static關鍵字的特點 1 隨類的載入而載入 2 優先於物件而存在 3 被類的所有物件共享 如 乙個班的同學共享乙個班級 4 可以通過類名呼叫。3.靜態變數與成員變數的區別 4.塊 用 括起來的 1 區...