小甲魚Python第036講:類和物件:給大家介紹物件 | 課後測試題及參考答案
阿新 • • 發佈:2020-08-11
測試題:
0.物件中的屬性和方法,在程式設計中實際是什麼?
變數(屬性)和函式(方法)
1.類和物件是什麼關係呢?
類和物件的關係就如同模具和用這個模具製作出的物品之間的關係。一個類為它的全部物件給出了一個統一的定義,而他的物件則是符合這種定義的一個實體,因此類和物件的關係就是抽象和具體的關係。物件是類的例項化。
2.如果我們定義了一個貓類,那你能想象出由“貓”類例項化的物件有哪些?
叮噹貓,Tom貓,Hello Kitty```````
3.類的定義有些時候或許不那麼“擬物”,有時候會抽象一些,例如我們定義一個矩形類,那你會為此新增哪些屬性和方法呢?
屬性可以是長和寬,方法可以是計算周長、面積等
4.類的屬性定義應該儘可能抽象還是儘可能具體?
正確的做法應該是儘可能抽象,因為這樣更符合面向物件的思維。
5.請用一句話概括面向物件的幾個特徵?
封裝:對外部隱藏物件的工作細節;
繼承:子類自動共享父類之間資料和方法的機制;
多型:可以對不同類的物件呼叫相同的方法,產生不同的結果。
6.函式和方法有什麼區別?
函式和方法幾乎一樣。主要有一點區別在於方法預設有一個self引數。
動動手:
0.按照以下提示嘗試定義一個Person類並生成類例項物件。
屬性:姓名(預設姓名為“小甲魚”)
方法:列印姓名
提示:方法中對屬性的引用形式需加上self,如self,name
實現程式碼:
1 class Person: 2 name = "小鯽魚" 3 def getName(self,name): 4 print(self.name)
1.按照以下提示嘗試定義一個矩陣類並生成類例項物件。
屬性:長和寬
方法:設定長和寬->setRect(self),獲得長和寬->getRect(self),獲得面積->getArea(self)
提示:方法中對屬性的引用形式需加上self,如self.width
程式截圖:
實現程式碼:
1 class Rectangle: 2 length =float(5)3 width = float(4) 4 5 def setRect(self): 6 temp = print("請輸入矩陣的長和寬...") 7 self.length = float(input("長:")) 8 self.width = float(input("寬:")) 9 10 def getRect(self): 11 print("這個矩陣的長是:%.2f,寬是:%.2f" %(self.length,self.width)) 12 13 def getArea(self): 14 return self.length * self.width