類 Class 對象、定義、方法


面向對象的定義

類 Class: 用來描述具體相同的屬性和方法的對象的集合。定義了該集合中每個對象所共有的屬性和方法。對象是類的示例。

類變量:類變量在整個實例化的對象中是公用的。類變量定義在類中且在函數體之外。類變量通常不作為實例變量使用。

數據成員:類變量或者實例變量用於處理類及其實例對象的相關數據。

方法重寫:如果從父類繼承的方法不能滿足子類的需求,可以對其 進行改寫,這個過程叫方法的覆蓋(override),也稱為方法的重寫。

實例變量:定義在方法中的變量,只作用於當前實例的類。

繼承:即一個派生類(derived class)繼承基類(base class)的字段和方法。繼承也允許把一個派生類的對象作為一個基類對象對待。例如,有這樣一個設計:一個Dog類型的對象派生自Animal類,這是模擬”是一個(is-a)”關系(例圖,Dog是一個Animal)。

實例化:創建一個類的實例,類的具體對象。就是將創建的類賦值給另一個變量。理解為賦值即可,a = class(),這個過程,就叫做實例化

方法:類中定義的函數。

對象:通過類定義的數據結構實例。對象包括兩個數據成員(類變量和實例變量)和方法。

定義

語法格式

class ClassName:
    '''Description'''
    <statement-1>
    .
    .
    .
    <statement-N>

類實例化后,可以使用其屬性,實際上,創建一個類之后,可以通過類名訪問其屬性

類的方法

在類內部,使用 def 關鍵字來定義一個方法,與一般函數定義不同,類方法必須包含參數 self, 且為第一個參數,self 代表的是類的實例。

class people:
    #定義基本屬性
    name = ''
    age = 0
    #定義私有屬性,私有屬性在類外部無法直接進行訪問
    __weight = 0
    #定義構造方法
    def __init__(self,n,a,w):
        self.name = n
        self.age = a
        self.__weight = w
    def speak(self):
        print("%s 說: 我 %d 歲。" %(self.name,self.age))

# 實例化類
p = people('runoob',10,30)
p.speak()

類對象

類對象支持兩種操作,屬性引用實例化。 
類對象創建后,類命名空間中所有的命名(變量、函數)都是有效屬性名。

class devops():
    # 定義一個簡單的類
    ops = ['Citizen_Wang', 'Bob_Zhou']
    dev = ['Jerry_Xue', 'Bagwell_Yan']
    def hello(self):
        print('Hello world')

# 實例化 類
a = devops()

# 訪問類的屬性 ops,dev
print(a.ops)
print(a.dev)

# 訪問類的方法 hello 函數
a.hello()

輸出結果:

['Citizen_Wang', 'Bob_Zhou']
['Jerry_Xue', 'Bagwell_Yan']
Hello world

實例化之后,支持對屬性進行修改 =大師兄python

class devops():
    # 定義一個簡單的類
    ops = ['Citizen_Wang', 'Bob_Zhou']
    dev = ['Jerry_Xue', 'Bagwell_Yan']
    def hello(self):
        print('Hello world')

# 實例化 類
a = devops()

# 訪問類的屬性 ops,dev
print(a.ops)
a.ops = 'No one has left'
print(a.ops)





轉自:https://blog.csdn.net/cityzenoldwang/article/details/78359348







免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM