9. 使用@<屬性名稱>.setter
使用@<屬性名稱>.setter裝飾器可以讓一個設定值方法的使用方式寫成:
實體名稱.方法名稱 = 設定值
這個裝飾器使用之前,應該已經用@property修飾另一個有相同方法名稱的getter。
(1) 用@<屬性名稱>.setter裝飾setter方法
以下是一個例子:
這個程式用@no.setter及@name.setter修飾兩個屬性的setter方法,使用此類別的實體(假設是s)可用:
s.no = '123'
s.name = 'tomlin'
設定物件的屬性值。
以下是一個使用它們的例子:
執行結果:
110001 王小明 王大明
說明:
問題:
撰寫一個「成績」(Score)的類別,每個實體有3個私用實體變數,包括國文、英文、數學。除了建構元外,請增加3個getter及setter方法取出及設定實體變數值,並且用@property及@<屬性>.setter裝飾它們。請生成以下實體,再印出其國文、英文、數學成測。完成後,假設現在每個人的數學可加5分,請修改其值並顯示新的分數: 國文70,英文50,數學90 國文80,英文65,數學75 國文75,英文80,數學85