物件導向程式設計

2021-10-11 10:10:54 字數 3155 閱讀 8617

1. 簡述物件導向的三大特性。

封裝: 就是將資料和****在一起,防止外界干擾。

繼承: 就是讓乙個型別的物件擁有另乙個型別的物件的屬性的方法。 繼承後,子類擁有父類的屬性和方法。

多型: 就是乙個事物擁有不同形式的能力。

2. 簡述如何定義類變數與例項變數,以及這兩種變數在使用時的注意事項。

類變數:

name = 「」 self.name

age = 0 self.age

sum1 = 1

例項變數

self.name

self.age

例項變數是對於每個例項都獨有的資料,而類變數是該類所有例項共享的屬性和方法。

1. 設計乙個簡單的購房商貸月供計算器類,按照以下公式計算總利息和每月還款金額:

總利息=貸款金額*利率

每月還款金額 = (貸款金額+總利息)/貸款年限

貸款年限不同利率也不同,這裡規定只有如表8-2所示的3種年限、利率。

年限 利率

3年(36個月) 6.03%

5年(60個月) 6.12%

20年(240個月) 4.39%

class

calculator()

:def

__init__

(self,money,time)

: self.money = money

if time ==

'1':

self.time =

3elif time ==

'2':

self.time =

5elif time ==

'3':

self.time =

20def

loan_total_money

(self)

:return

(self.money)

*(self.loan_rate_money())

defloan_rate_money

(self)

:if self.time ==3:

return

0.0603

elif self.time ==5:

return

0.0612

elif self.time ==20:

return

0.0439

defevery_repayment_money

(self)

:return

(self.money + self.loan_total_money())

/(self.time*12)

money =

int(

input

("請輸入貸款金額: "))

time =

input

("請選擇貸款年限:1. 3年(36個月) 2. 5年(60個月) 3. 20年(240個月)"

)month_money = calculator(money,time)

print

("月供為%f:"

%(month_money.every_repayment_money())

)

2. 設計bird、fish類,都繼承自animal類,實現其方法print_info(),輸出資訊。
```python

class

animal()

:def

__init__

(self,age)

: self.age = age

defprint_info

(self)

:print

("我今年%d歲了!"

%(self.age)

)class

bird

(animal)

:def

__init__

(self, color)

:super()

.__init__(4)

self.color = color

defprint_info

(self)

:print

("我是乙隻%s的鳥"

%(self.color)

)super()

.print_info(

)class

fish

(animal)

:def

__init__

(self, weight)

:super()

.__init__(2)

self.weight = weight

defprint_info

(self)

:print

("我是乙隻%d斤重的魚"

%(self.weight)

)super()

.print_info(

)bird = bird(

"紅色"

)bird.print_info(

)fish =fish(5)

fish.print_info(

)

class

phone()

:def

call

(self)

:print

("使用功能機打**"

)class

iphone

(phone)

:def

call

(self)

:print

("使用蘋果手機打**"

)class

aphone

(phone)

:def

call

(self)

:print

("使用安卓手機打**"

)class

person()

:def

use_phone_call

(self, phone)

: phone.call(

)person = person(

)person.use_phone_call(phone())

person.use_phone_call(iphone())

person.use_phone_call(aphone(

))

c 物件導向程式設計 物件導向

什麼是物件導向 是對現實世界理解和抽象的方法。物件導向程式設計的特點 易維護,易擴充套件,靈活性好,重用 類 對事物的抽象定義,即事物具有的共同特徵和行為。物件 即對類進行例項 類是抽象的,物件是具體的 類的定義 語法 訪問修飾符 class 類名類的成員 包括字段,屬性,方法,常量,事件和索引器等...

物件導向程式設計

物件導向程式設計 抽象 封裝 繼承 多型 單一職責原則 就乙個類而言,應該僅有乙個引起它變化的原因。開放封閉原則 軟體實體應該可以擴充套件,但是不可修改。所有的設計模式都是對不同的可變性進行封裝,從而使系統在不同的角度上達到開發封閉原則。依賴倒轉原則 a 高層不應該依賴低層,兩個都應該依賴抽象。b ...

物件導向程式設計

class team def init self self.name tampa bay buccaneers bucs team print bucs.name tampa bay buccaneers 當呼叫team 函式時,會自動呼叫init函式,self是自動傳入到init中的引數,它指向當...