物件導向 二

2021-07-25 11:14:17 字數 1388 閱讀 5350

多型(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 區...