003---属性查找和绑定方法
生活随笔
收集整理的這篇文章主要介紹了
003---属性查找和绑定方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
屬性查找與綁定方法
屬性查找
類有兩種屬性:數據屬性和函數屬性
class LuffyStudent:school = 'Luffy'def __init__(self, name, sex, age):self.name = nameself.sex = sexself.age = agedef learn(self, class_name):print('%s 正在學習 %s' % (self.name, class_name))def eat(self):print('吃東西')def sleep(self):print('睡覺')s1 = LuffyStudent('王青', '女', 18) s2 = LuffyStudent('江子牙', '男', 21)- 類的數據屬性是共享的,在內存中只存在一份。
- 類的函數屬性是綁定給對象用的,綁定到對象的內存地址都不一樣。
綁定方法
定義類并實例化三個對象
class LuffyStudent:school = 'Luffy'def __init__(self, name, sex, age):self.name = nameself.sex = sexself.age = agedef learn(self, class_name):print('%s 正在學習 %s' % (self.name, class_name))def eat(self):print('吃東西')def sleep(self):print('睡覺')s1 = LuffyStudent('王青', '女', 18)s2 = LuffyStudent('江子牙', '男', 21)s3 = LuffyStudent('江薏米', '女', 0)- 類中定義的方法(沒有加任何裝飾器的),類可以使用,但必須遵循函數的參數規則,有個參數self
- 其實這種方法并不是給類使用的,而是給對象用的,而且是綁定到對象的。雖然所有對象都指定一樣的方法,但是綁定到不同對象就是不同的綁定方法。
- 特殊之處就是,綁定給誰,誰就來調用。就會將它自己作為第一個參數傳給綁定方法,即自動傳值(init()也是一樣)
- 注意:這種自動傳值的特征,決定了類中定義的函數都要默認寫一個參數self,不是固定名字,至少約定成俗的寫出self。就像是一種規范
轉載于:https://www.cnblogs.com/xjmlove/p/10319098.html
總結
以上是生活随笔為你收集整理的003---属性查找和绑定方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java forEach中 Lambda
- 下一篇: vue中前端处理token过期的方法与a