日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python和对象复习_面向对象阶段复习

發布時間:2024/9/19 python 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python和对象复习_面向对象阶段复习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

面向對象階段復習

一、類,對象,屬性方法調用

class 類名(父類1,父類2):

靜態屬性 = '' # 靜態屬性,也叫類屬性

def __init__(self): # 初始化方法

self.name = 'aa'

def func(self): # 動態屬性 方法

print(self.age) # 這里的age可以是實例化后,通過對象.age = xxx 的方式添加的屬性

對象 = 類名() # 實例化

對象.方法名() # 調用類里面的方法

對象.屬性名 # 調用類里面的屬性 對象即類里面的self

對象.name # 調用name屬性

對象.age = 18 # 添加屬性,與前面的print(self.age)相應

對象.func() # 實際上也等于類名.func(對象)

二、組合:表達什么有什么的問題,一個類都屬性是另一個類的對象

# 組合:class 里面有 course

class course:

def __init__(self,name,price,period):

self.name = name

self.price = price

self.period = period

class class:

def __init__(self,name,course):

self.name = name

self.course = course # class類的屬性course

#self.course_name = 'python' # 賦值

python = course('python xxx',18000,'6 months') # 實例化對象 course類的實例化對象

pys1 = class('pys_1',python) # 實例化對象,把python這個對像傳入course中,即course的相關屬性也對應傳入

print(pys1.course.name) # 可以通過pys1查看到course的信息 組合的功能體現在這里

python.name = 'python sss' # 可以通過組合,修改一些參數,比較簡單

print(pys1.course.name)

運行結果:

python xxx

python sss

命名空間:類和對象分別存在不同的命名空間中,互不影響

三、面向對象的三大特征:繼承,多態,封裝

1、繼承

單繼承:

父類(超類,基類)

子類(派生類):派生方法和派生屬性

子類的對象在調用方法和屬性:先用自己,自己沒有采用父類的

多繼承:

不會超過三個父類,最好不要超過三層

如果子類自己有用自己的,如果沒有就用距離子類最近的那個父類的方法

抽象類和接口類

經典類和新式類,繼承規則不同,深度優先和廣度優先原則(面試的時候有可能會問到,平時用不到)

super只能在python3中使用 mro,是根據mro廣度優先順序找上一個類

2、多態(面試)

多態和鴨子類下

3、封裝(面試)

私有的

__m名字

只能在類的內部調用,子類都無法繼承

三個裝飾器“

@property ?? 規范,與@name.setterj結合用可以做出一些設置

@staticmethod

@classmethod ? 當一個方法只使用了類的靜態變量時,就給這個方法加上@classmethod裝飾器,默認傳cls參數

希望與廣大網友互動??

點此進行留言吧!

總結

以上是生活随笔為你收集整理的python和对象复习_面向对象阶段复习的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。