1.什么是面向對象
面向對象是一種軟件開發(fā)方法妖混,更是一種軟件開發(fā)的思想祥诽。面向對象的概念和應用已經(jīng)超越了程序設計和軟件開發(fā)擴展到如數(shù)據(jù)庫系統(tǒng) 黍聂、交互式界面躺苦、應用結構身腻、應用平臺产还、分布式系統(tǒng)、網(wǎng)絡管理結構嘀趟、CAD技術脐区、人工智能等領域。面向對象是一種對現(xiàn)實世界理解和抽象的方法她按,是計算機編程技術發(fā)展到一定階段的產物
2.類和對象的區(qū)別
類是通過對象抽象出來的一個數(shù)據(jù)類型牛隅,對象是有具體特征和行為的事物。
類是現(xiàn)實世界或思維世界中的實體在計算機中的反映酌泰,它將數(shù)據(jù)以及這些數(shù)據(jù)上的操作封裝在一起媒佣,對象是具有類類型的變量。類和對象是面向對象編程技術中的最基本的概念陵刹。類是對象的抽象默伍,而對象是類的具體實例。類是抽象的衰琐,不占用內存也糊,而對象是具體的,占用存儲空間羡宙。類是用于創(chuàng)建對象的藍圖狸剃,它是一個定義包括在特定類型的對象中的方法和變量的軟件模板。
3.類的聲明定義語法操作
類是通過class關鍵字直接聲明定義一個自定義類型狗热,class數(shù)據(jù)類型名稱:pass钞馁。類型是專門用來創(chuàng)建對象的,創(chuàng)建對象包含具體數(shù)據(jù)的實體匿刮,語法:變量 = 數(shù)據(jù)類型()僧凰。對象是有特征的,項目需要這樣的特征僻焚,就定義它允悦,如果不需要就忽略它!語法:對象的特征~是需要在類型中定義的!在通過類型創(chuàng)建對象時隙弛,才會給具體的特征賦值給對象的特征賦值架馋,固定語法:在init()函數(shù)中操作
class Author:
# 給對象的特征賦值,在init()中進行操作
def init(self, username, password, nickname):
self.username = username
self.password = password
self.nickname = nickname
python中通過類型創(chuàng)建對象[a = Author()]會自動調用init()方法
創(chuàng)建對象a = Author()-> Author.new()方法創(chuàng)建對象
-> Author.init()方法初始化數(shù)據(jù)
-> 得到一個Author對象
在Python中,有一種特殊的函數(shù):魔法函數(shù)
每個魔法函數(shù)有一些特定的功能全闷,方法名稱都是固定的
魔法函數(shù)的命名規(guī)則:函數(shù)的前后各有兩個下劃線叉寂!
對象的行為,分析~是否和對象本身的數(shù)據(jù)有關总珠!
生活:分析~行為是否跟自己的身份和責任有關屏鳍!
對象的行為:對象的方法:就是一個普通函數(shù)的升級
將一個函數(shù),定義在類型的內部局服,第一個參數(shù)~設置為可以接受對象的參數(shù):self
class Author:
# 定義一個行為:個人介紹
def introduction(self):
print("個人介紹.........")
方法是定義在類型的內部的钓瞭!
方法的調用必須通過對象的引用變量調用
函數(shù)中的任何形式參數(shù),在調用的時候都需要明確的傳遞數(shù)據(jù)
函數(shù)是定在在類型的外部的淫奔!
函數(shù)的調用直接通過函數(shù)名稱調用
調用執(zhí)行方法:類似與調用執(zhí)行函數(shù)
方法的調用執(zhí)行:必須通過對象的引用變量進行調用山涡!
author = Author()
author.introduction()