面向對象語言
面向對象語言(Object-Oriented Language)是一類以對象作為基本程序結構單位的程序設計語言,指用于描述的設計是以對象為核心,而對象是程序運行時刻的基本成分。語言中提供了類、繼承等成分,有識認性、多態(tài)性、類別性和繼承性四個主要特點。
python具備這些特點,所以它是面向對象語言。
面向對象編程
面向對象程序設計(Object Oriented Programming)作為一種新方法,其本質是以建立模型體現出來的抽象思維過程和面向對象的方法。模型是用來反映現實世界中事物特征的。任何一個模型都不可能反映客觀事物的一切具體特征,只能對事物特征和變化規(guī)律的一種抽象,且在它所涉及的范圍內更普遍、更集中、更深刻地描述客體的特征。通過建立模型而達到的抽象是人們對客體認識的深化。
python的程序設計,以這種方式進行,叫面向對象編程。
python面向對象編程
舉個例子:
class animal(object):
class dog(object):
def jinmao():
print("金毛狗")
class fish(object):
def jinqiangyu():
print("金槍魚")
def luofeiyu():
print("羅非魚")
animal.dog.jinmao()
如上,使用class定義了一個類,并繼承了object。animal是一個大類,很明顯是動物的意思,具有識認性;動物有很多種,具有類別性;多態(tài)性如何理解?對于金槍魚,你可以叫它金槍魚,也可以叫它魚,還可以叫它動物。具有多種形態(tài)的叫法(不同功能),稱之為多態(tài)。
這就是面向對象編程。
面向對象編程的做法是,當解決一個問題的時候,面向對象會把事物抽象成對象的概念,就是說這個問題里面有哪些對象,然后給對象賦一些屬性和方法,然后讓每個對象去執(zhí)行自己的方法,問題得到解決。
在面向對象編程之前,面向的是過程,如C語言。面向過程注重過程的。當解決一個問題的時候,面向過程會把事情拆分成: 一個個函數和數據(用于方法的參數) 。然后按照一定的順序,執(zhí)行完這些方法(每個方法看作一個個過程),等方法執(zhí)行完了,事情就搞定了。