python的三種特性

一、封裝java

何時用函數?python

    各個函數之間是獨立的且無共用的數據。函數

 

何時用類?spa

    函數之間是相關的,且有共用的數據,則能夠使用類來封裝。對象

 

所謂的封裝:繼承

(1)使用構造方法將內容封裝到 對象 中。get

(2)經過對象直接獲取被封裝的內容或者經過self間接獲取被封裝的內容。it

 

class A:class

    def __init__(self, name, age):變量

        self.name = name

        self.age = age

    def get(self):

        print(self.name)

 

# 實例化

obj = A()

obj.get() 等價於 obj.get(obj)

# 調用的時候,會將對象obj自身賦值給self變量

self = obj                            

self.name 等價於 obj.name

self.age 等價於 obj.age

 

二、繼承

同現實中的繼承同樣。

貓能夠:喵喵叫、吃、喝、拉、撒

狗能夠:汪汪叫、吃、喝、拉、撒

 

動物:吃、喝、拉、撒

貓:喵喵叫(貓繼承動物的功能)

狗:汪汪叫(狗繼承動物的功能)

對於面向對象的繼承來講,其實就是將多個類共有的方法提取到父類中,子類僅需繼承父類,沒必要

一一實現每一個方法。

當類是經典類時,多繼承狀況下,會按照深度優先方式查找

當類是新式類時,多繼承狀況下,會按照廣度優先方式查找

 

若是當前類繼承了object,那麼當前類即是新式類;

若是當前類的父類繼承了object,那麼當前類即是新式類;

除了這2種狀況,其餘類都是經典類。

 

三、多態

在Java或C#中定義函數參數時,必須指定參數的類型。

好比java定義函數:

public static int sum(int num1, int num2) {

    # 函數體

}

在python中不用指定類型,能夠直接用。

好比:

def sum(num1, num2):

    # 函數體

相關文章
相關標籤/搜索