Day11 物件導向的三大特性之繼承

2021-10-20 11:55:41 字數 1983 閱讀 6469

繼承

super注意點:

super呼叫父類的構造方法,必須在構造方法的第乙個

super 必須只能出現在子類的方法或者構造方法中!

super和 this 不能同時呼叫構造方法!

this:

代表的物件不同:

this: 本身呼叫者這個物件super:代表父類物件的應用前提

this: 沒有繼承也可以使用

super: 只能在繼承條件才可以使用構造方法

this():本類的構造

super():父類的構造!

package com.oop.demo04;

public

class

person

public

void

say(

)public

intgetmoney()

public

void

setmoney

(int money)

public

void

print()

}

package com.oop.demo04;

public

class

student

extends

person

public

void

test

(string name)

public

void

test1()

public

void

print()

}

package com.oop;

import com.oop.demo04.student;

public

class

}呼叫父類構造器

呼叫子類構造器

說了一句話!

1000000000

形參:仰望星空

子類中的名字:hsms

父類中的名字:幻世蠻殤

student

student

person

方法重寫

為什麼要重寫:

1.父類的功能,子類不一定需要,或者不一定滿足

alt+insert;override;

靜態方法時:

​ 方法的呼叫只和左邊定義的資料型別有關

//a繼承b

a a=

newa()

;a.test()

;b b=

newa()

;//父類的引用指向子類

b.test()

;結果:

a=>

test()

b=>

test

()

非靜態方法時:重寫

a=

>

test()

a=>

test

()

package com.oop.demo05;

public

class

aextends

b}

package com.oop.demo05;

public

class

b}

1.需要有繼承關係:子類、父類才能重寫,子類重寫父類方法。

2.方法名必須相同

3.引數列表相同

4.修飾符:範圍可以擴大但不能縮小;public>protected>default>private

5.丟擲異常:範圍,可以縮小但不能擴大;classnotfoundexception–>exception

重寫,子類的方法名和父類必須一致,方法體不同

物件導向三大特性之繼承

1 author kelvin2 date 2019 1 16 18 5734 class father 5 money 100067 def init self,name 8print 父類的init方法.9 self.name name 1011 defteach self 12print s ...

物件導向三大特性之封裝

物件導向的三大基本特徵 封裝 封裝是指將物件的實現細節隱藏起來,然後通過公共的方法來向外暴露該物件的事功能。繼承 即城市物件導向實現軟體服用的重要手段,當子類繼承父類後,子類是一種特殊的父類,能直接或間接獲得父類的成員。多型 多型是可以直接把子類物件賦給父類變數,但是執行時依然表現出子類的行為特徵,...

物件導向三大特性之繼承

子類繼承 1 子類和父類如果在同乙個包內,則子類可以繼承父類的除private以外的所有成員變數和方法,並且許可權不變 2 子類和父類如果不在同乙個包內,則子類可以繼承父類的public和protected許可權的成員變數和方法,不能繼承友好型和private 繼承的優點 1.提高 的重用性,子類繼...