python-类知识点简介
生活随笔
收集整理的這篇文章主要介紹了
python-类知识点简介
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python3 類簡介
類簡介
類簡介目錄概覽
- 示例
示例
'''Python中同樣是支持面向對象編程的(Object Oriented Programming)。''''''1. 類的數據屬性和實例的數據屬性不同,即使同名;2. 類的實例可以在被創建后通過.的形式來新增實例數據屬性;3. 類數據屬性通過類名來調用和修改,也可以通過實例來調用但不能修改,如果通過實例來更新則會產生一個新的僅屬于該實例屬性;4. 類有靜態方法和類方法,可以通過函數修飾符來說明;5. Python中的類可以多繼承;6. 默認Python中的屬性和方法是公開的(Public),可以通過下面的方法來實現 私有變量和方法_xxx 不能用'from module import *'導入__xxx__ 系統定義名字__xxx 類中的私有變量名"單下劃線" 開始的成員變量叫做保護變量,意思是只有類對象和子類對象自己能訪問到這些變量;"雙下劃線" 開始的是私有成員,意思是只在類內部能被訪問,連子類對象也不能訪問到這個數據。'''# 定義一個人物類class People(object):# 此處定義的類的屬性count = 0def __init__(self, name, sex, age):# 類似this指針People.count += 1self.name, self.sex, self.age = name, sex, ageself.count = 10# 此處定義實例的屬性self.instance_attr = 'Test'# 公有成員函數def peoplePrint(self):print('Name is', name)print('Sex is', sex)print('Age is', age)# 靜態方法 此處無參數@staticmethoddef static_method():print('This is a static method in', People.__name__)# 類方法 cls為類@classmethoddef class_method(cls):print('This is a class method', cls.__name__)name = 'who'sex = 'm'age = 23# 打印類的屬性print(People.__dict__)# 類實例化one_people = People(name, sex, age)print(one_people.__dict__)# 調用成員函數one_people.peoplePrint()# 實例對象調用對象的成員變量print(one_people.name)one_people.name = 'am'print(one_people.name)# 調用類的屬性print(People.count)People.count += 1print(People.count)print(People.__dict__)# 實例化另一個對象 類的屬性count自增1two_people = People(name, sex, age)print(People.__dict__)# ============================# 靜態方法People.static_method()# 類方法People.class_method()# ============================華麗的分割線===================================class Animal(object):"""這是一個動物的基類"""def __init__(self):"""初始化方法"""print('這是一個動物的基類')self.__printAnimal()self._printAnimal()def sounding(self):"""定義一個基本行為(方法)"""print('動物的發聲')def _printAnimal(self):"""類的保護函數"""print('Protected')def __printAnimal(self):"""類的私有函數,只能被在類的內部使用"""print('Private')class Dog(Animal):"""繼承Animal基類"""def __init__(self):Animal.__init__(self) # 此處需要顯示的給定參數selfprint('實例化一個Dog對象')def sounding(self):"""重載基類的方法"""Animal.sounding(self)print('Dog的發聲是:汪汪')class Cat(Animal):"""繼承Animal基類"""def __init__(self):Animal.__init__(self)print('實例化一個Cat對象')def sounding(self):"""重載父類的sounding方法:return: None"""Animal.sounding(self)print('Cat的發聲是:喵喵')# 實例Dog對象dog1 = Dog()# 調用Dog類的sounding方法dog1.sounding()# 調用父類的保護方法dog1._printAnimal()# 實例Cat對象cat1 = Cat()# 調用Cat類的sounding方法cat1.sounding()# 調用父類的保護方法cat1._printAnimal()# cat1.__printAnimal() 報錯
轉載于:https://www.cnblogs.com/cloudtj/articles/6108739.html
總結
以上是生活随笔為你收集整理的python-类知识点简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cesium原理篇:7最长的一帧之Ent
- 下一篇: Android系统中自定义按键的短按、双