物件導向的三大特性:
類中名字的格式system.out.println("school = "+school+"; age = "+age)
語法理解override:子類繼承父類的方法,也可以覆寫
示例**如下:
/*ext3*/
class
person
}public
intgetage()
public
void
printinfo()
}class
student
extends
person
public string getschool()
/*構造方法*/
public
student
(string school)
/* override */
public
void
printinfo()
}public
class
ext3
}
示例**:
/*ext4*/
class
person
}public
intgetage()
public
void
printinfo()
/*構造方法1*/
public person (
)/*構造方法2*/
public person (
int age)
}class
student
extends
person
public string getschool()
/*構造方法*/
public
student
(string school)
/* override */
public
void
printinfo()
}public
class
ext4
}
看不到父親的絕招:私有方法不能被子類訪問
不能把祖傳的招式私吞了:子類覆寫的方法不能縮小許可權
父類中含有私有方法func1,如果子類中public方法的名字和父類的這個私有方法func1同名,那麼這裡不能稱子類對父類的override,因為子類不知道父類有這樣的乙個方法
示例**如下:
/*ext5*/
class
father
public
void
setmoney
(int money)
public
void
printinfo()
private
void
printinfo2()
/*私有方法*/
}class
sonextends
father
/*override */
public
void
printinfo2()
/*this is not override*/
}public
class
ext5
}
作用:規定子類必須實現的方法,起「模板」作用
抽象類不能夠例項化物件
所以說如果要使用抽象類,就必須讓它的子類實現抽象類的所有抽象方法
示例**:
/*ext6*/
abstract
class
father
public
void
setmoney
(int money)
public
abstract
void
study()
;/*abstract function*/
}class
sonextends
father
/*implement abstract function*/
}public
class
ext6
}
乙個子類可以實現多個介面;但是子類必須實現介面裡面的所有抽象方法
介面裡面的屬性全部都是常量,不是變數,所以不能被修改
子類可以在繼承多個介面的同時,繼承乙個父類或者抽象類
示例**:
/*ext7*/
/*abstract class*/
abstract
class
father
public
void
setmoney
(int money)
public
abstract
void
study()
;/*abstract function*/
}inte***ce
ainte***ce
b/*extends father class, and implements inte***ce */
//子類可以在繼承多個介面的同時,繼承乙個父類或者抽象類
class
sonextends
father
implementsa,b
/*implements abstract function*/
public string getname()
/*implements abstract function*/
public
void
study()
/*implements abstract function*/
}public
class
ext7
}
PHP 物件導向程式設計之繼承性
可以有多層繼承,即乙個類可以繼承某乙個類的子類,如類 b 繼承了類 a,類c 又繼承了類 b,那麼類 c 也間接繼承了類 a。class a class b extends a php是單繼承,乙個類只能有乙個父類 乙個類可以有多個子類 支援多層繼承 classa class bextends ac...
GO 物件導向 繼承性
首先我們需要定義父級的結構體和方法 然後在寫孩子的結構體和方法 從而就會有三種形式 在學到這一步貌似go的繼承比php的要簡單的多 go的繼承只需要把父級的結構體名直接放到裡邊就行 繼承後可以訪問父級的屬性和方法 也可以訪問自己的專有屬性 同時還擁有重寫父級方法 所有案例都配備有 直接扔進去就可以執...
C 物件導向程式設計的繼承性(二)
介面是物件導向中乙個非常重要的概念,而且,物件導向中的繼承性和多型性主要都是通過介面來體現的。1 介面概述 介面是一種用來定義程式的協議,它描述可屬於任何類或結構的一組相關行為,可以把它看成是實現一組類的模板。介面可由方法 屬性 事件和索引器或這4種成員型別的任何組合構成,但不能包含字段。類和結構可...