python物件導向程式設計類與物件的用法

2021-10-09 09:02:14 字數 2257 閱讀 6644

class student(object):

# 類屬性

num = 0

def __init__(self, name, score):

"""初始化方法"""

self.name = name

# 雙下滑線定義私有屬性,私有屬性只能在類裡面被訪問

# 外面無法直接訪問私有屬性

self.__score = score

# self.__class__ 自動返回每個物件的類名

self.__class__.num += 1

def show(self):

"""例項方法,列印學生姓名、分數"""

print("name:{},score:{}".format(self.name, self.__score))

# @property裝飾器可以將乙個方法的呼叫轉換成屬性的呼叫,不用加小括號

@property

def score(self):

"""例項方法,列印學生姓名、分數"""

print("name:{},score:{}".format(self.name, self.__score))

def __show2(self):

"""私有方法"""

print("name:{},score:{}".format(self.name, self.__score))

@classmethod

def total(cls):

"""類方法,列印學生數量"""

print("學生數量是:{}".format(cls.num))

@staticmethod

def static_method():

print("這是乙個靜態方法")

# 建立兩個例項物件

s1 = student("maya", 88)

s2 = student("haha", 99)

# 例項物件呼叫例項方法

s1.show()

print(student.num)

# 類物件呼叫類方法

student.total()

# 靜態方法可以通過例項物件或者類直接呼叫

s2.static_method()

student.static_method()

# score實際上是乙個函式,但是被@property裝飾了,所以直接按照屬性呼叫即可

# 一旦給函式加上乙個裝飾器@property,呼叫函式的時候不用加括號就可以直接呼叫函式了

s1.score

class schoolmember(object):

def __init__(self, name, age):

"""初始化方法"""

self.name = name

self.age = age

def tell(self):

"""例項方法,列印個人資訊"""

print("name:{} ---ge:{}".format(self.name, self.age), end="---")

class teacher(schoolmember):

# 重寫初始化方法

def __init__(self, name, age, salary):

# 呼叫父類的初始化方法

super(teacher, self).__init__(name, age)

self.salary = salary

# 重寫tell方法

def tell(self):

# 呼叫父類的tell方法

super(teacher, self).tell()

print("salary:{}".format(self.salary))

class students(schoolmember):

def __init__(self, name, age, score):

super().__init__(name, age)

self.score = score

def tell(self):

super().tell()

print("score:{}".format(self.score))

tea = teacher("maya", 28, 10000)

tea.tell()

stu = students("yajun", 22, 100)

stu.tell()

python物件導向 類與物件

嗯,本學期開始學python物件導向的內容了,唔,前面的內容會在後期有時間慢慢補的。類與物件 我生活中有這樣一句話叫 物以類聚,人以群分 重點是前面那句,什麼是類呢,就是一類事物,比如人類 動物類 這是乙個大的範圍 類是封裝物件的屬性和行為的載體,反過來說,具有相同屬性和行為的一類實體被稱為類 而物...

php物件導向程式設計 類與物件

1 類和物件的區別與聯絡 1.類是抽象的,概念的,代表一類事物,比如人類,貓類 2.物件是具體的,實際的,代表乙個具體的事物 3.類是物件的模板,物件是類的乙個個體例項 2 類與物件例項 建立乙個cat類 class cat 建立乙個物件 cat1 通過cat類建立乙個cat1物件 cat1 new...

python 面向過程程式設計與物件導向程式設計

面向過程 核心就是過程二字,過程指的是解決問題的步驟,設計一條流水線,機械式的思維方式.優點 複雜的問題流程化,進而簡單化.缺點 可擴充套件性差.物件導向 核心就是物件二字.物件就是特徵與技能的結合.上帝視角.優點 可擴充套件性強,缺點 程式設計複雜度高.應用場景 使用者需求經常變化,網際網路應用,...