物件導向 繼承之新增功能案例

2021-08-28 11:49:51 字數 1866 閱讀 3698

『』』

#實現功能案列

姓名:王飛 年齡:30 性別:男 工齡:5

我承諾,我會認真教課。

王飛愛玩象棋

姓名:小明 年齡:15 性別:男 學號:00023102

我承諾,我會 好好學習。

小明愛玩足球。

#案例題目描述:

1.從案例效果分析有老師和學生2個事物,老師裡面有姓名、年齡、性別、工齡幾個變數。

2.學生裡面有姓名、年齡、性別、學號幾個變數。

3.老師裡面有講課、玩和顯示資訊的show方法。

4.學生裡面有學習、玩和顯示資訊的show方法

5.分析老師和學生裡面公有的東西抽象出乙個父類出來,將公有的東西寫在父類中

6.建立乙個老師和乙個學生並完成賦值。

#案列分析

老師類: teacher

屬性:姓名、年齡、性別、工齡、

行為:teach,play,show
學生類: student

屬性:姓名、年齡、性別、學號

行為:study,play,show
父類:person

共有屬性:姓名、年齡、性別

共有行為:play,show
#父類

class person:

#構造方法 成員屬性

def __init__(self,name,age,***):

self.name = name

self.age = age

self.*** = ***

def play(self,xingqu):

print(self.name + "愛玩" +xingqu)

def show(self):

print("姓名:%s,年齡:%d, 性別:%s"%

(self.name,self.age,self.***),end=',')

#學生類

class student(person):

def __init__(self,name,age,***,num): #新增功能

super().__init__(name,age,***)

self.num = num

def study(self):

print("%s承諾好好學習"%self.name)

def show(self):

super().show()

print("學號:%s"%self.num)

#教師類

class teacher(person):

def __init__(self,name,age,***,gongling): 新增功能

super().__init__(name,age,***)

self.gongling = gongling

def teach(self):

print("%s承諾好好教課"%self.name)

def show(self):

super().show()

print("工齡:%s"%self.gongling)

#建立物件

s1 = student('小明',18,"男","01110")

t1 = teacher("老王",30,"男","5")

#呼叫方法

t1.show()

t1.teach()

t1.play("象棋")

s1.show()

s1.study()

s1.play("遊戲")

物件導向之繼承

此段摘自 繼承方式限定了基類成員在派生類中的訪問許可權,包括 public 公有的 private 私有的 和 protected 受保護的 此項是可選的,如果不寫,預設為 private 或 protected。不要將繼承方式和成員屬性搞混了,不同的繼承方式會賦予繼承來的成員不同的屬性 簡單說一下...

物件導向之繼承

繼承 是一種新建類的方式,新建的類稱為子類,被繼承的類稱為父類 基類,超類 繼承描述的是一種遺傳關係,子類可以使用父類的屬性 注意 1 乙個類可以同時繼承多個父類 2 python中類分為兩種 新式類 繼承了object的類叫新式類,python3中所有的類都繼承了object類,即python3中...

物件導向之繼承

介紹 第一天的內容主要是不同情形下的方法過載。這一部分則主要講物件導向中繼承的概念。首先用乙個要點圖形來定義繼承。繼承 乙個簡單的例子 classa classclassa classb classb classclassb publicvoiddisplay2 classprogram 輸出結果 ...