国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

織夢(mèng)網(wǎng)站后臺(tái)關(guān)鍵詞推廣優(yōu)化app

織夢(mèng)網(wǎng)站后臺(tái),關(guān)鍵詞推廣優(yōu)化app,電商運(yùn)營(yíng) 網(wǎng)站運(yùn)營(yíng),wordpress圖片清晰度文章目錄 一、封裝二、繼承三、多態(tài)四、聚合/組合五、接口/實(shí)現(xiàn)六、抽象 一、封裝 封裝 Encapsulation 封裝是隱藏對(duì)象實(shí)現(xiàn)細(xì)節(jié)的過(guò)程內(nèi)部狀態(tài)通常不能被其他對(duì)象訪(fǎng)問(wèn)對(duì)象的數(shù)據(jù)只能通過(guò)接口去訪(fǎng)問(wèn)封裝使得對(duì)象可以被看成一個(gè)“黑盒子”它保護(hù)對(duì)象的內(nèi)部狀態(tài)不被其他對(duì)象破壞…

文章目錄

    • 一、封裝
    • 二、繼承
    • 三、多態(tài)
    • 四、聚合/組合
    • 五、接口/實(shí)現(xiàn)
    • 六、抽象


一、封裝

封裝 Encapsulation

  • 封裝是隱藏對(duì)象實(shí)現(xiàn)細(xì)節(jié)的過(guò)程
  • 內(nèi)部狀態(tài)通常不能被其他對(duì)象訪(fǎng)問(wèn)
  • 對(duì)象的數(shù)據(jù)只能通過(guò)接口去訪(fǎng)問(wèn)
  • 封裝使得對(duì)象可以被看成一個(gè)“黑盒子”
  • 它保護(hù)對(duì)象的內(nèi)部狀態(tài)不被其他對(duì)象破壞
  • 一個(gè)對(duì)象實(shí)現(xiàn)方法的改變,不影響其他相關(guān)對(duì)象
  • 對(duì)象間通過(guò)“接口”進(jìn)行通信

封裝內(nèi)容

  • 內(nèi)部的、不想讓其他人隨意了解的信息
  • 可以封裝類(lèi)的屬性,如,“人” 這個(gè)類(lèi),封裝個(gè)人的工資、資產(chǎn)、年齡等信息
  • 可以封裝類(lèi)的方法,如, “人”如何賺錢(qián)()?如何消磨時(shí)間()?

封裝目的

  • 保護(hù)隱私
  • 保護(hù)數(shù)據(jù)安全
  • 隔離復(fù)雜度 (內(nèi)部實(shí)現(xiàn)細(xì)節(jié)不對(duì)外公開(kāi))。如“空調(diào)”,封裝了制冷的過(guò)程,對(duì)人提供了一個(gè)制冷的按鈕

封裝方式:Public、Private、Protected和Package

封裝原則:對(duì)象應(yīng)該只顯示與其交互所需的接口。與對(duì)象的使用無(wú)關(guān)的細(xì)節(jié)應(yīng)該對(duì)其他對(duì)象隱藏起來(lái)。

封裝建議:設(shè)置屬性的 getter 和 setter 方法,實(shí)現(xiàn)對(duì)數(shù)據(jù)的隱藏,因?yàn)槠渌麑?duì)象不應(yīng)該直接操作另一個(gè)對(duì)象中的數(shù)據(jù)。

class Student:def __init__(self):self._name = None@propertydef name(self):return self._name@name.setterdef name(self, name):self._name = names = Student()
s.name = "張三"  # 調(diào)用 setter
print(s.name)  # 調(diào)用 getter,輸出 張三

二、繼承

繼承 Inheritance

  • 一個(gè)類(lèi)獲取另一個(gè)類(lèi)的狀態(tài)和行為,并添加額外的狀態(tài)和行為

示例:噴氣式飛機(jī)類(lèi)繼承飛機(jī)類(lèi)
在這里插入圖片描述

class Airplane:def __init__(self):self.speed = Nonedef get_speed(self):return self.speeddef set_speed(self, speed):self.speed = speedclass Jet(Airplane):def __init__(self, multiplier=2):super().__init__()self.multiplier = multiplier  # Super()和Super關(guān)鍵字用于引用超類(lèi)# 不需要定義get_speed()方法,它已繼承過(guò)來(lái)def set_speed(self, speed):  # set_speed()方法覆蓋了父類(lèi)Airplane中的行為return super().set_speed(speed * self.multiplier)def accelerate(self):  # 子類(lèi)可以定義新的行為super().set_speed(super().get_speed() * 2)j = Jet()
j.set_speed(1000)
print(j.get_speed())  # 輸出 2000
j.accelerate()
print(j.get_speed())  # 輸出 4000

三、多態(tài)

多態(tài) Polymorphism

  • 當(dāng)一個(gè)類(lèi)從另一個(gè)類(lèi)繼承而來(lái),多態(tài)使得子類(lèi)可以代替父類(lèi)
  • 消息發(fā)送方不需要知道消息接收方屬于那個(gè)子類(lèi)
  • 同一類(lèi)族的接收者可以按自己的方式處理信息
    • 同一類(lèi)族的接受者可以按自己的方式處理同一個(gè)消息
    • 可以有不同的對(duì)象以不同的方式處理相同的數(shù)據(jù)

多態(tài)的核心思想/設(shè)計(jì)模式的基礎(chǔ)

  • 使用指向父類(lèi)的指針或者引用,能夠調(diào)用子類(lèi)的對(duì)象
  • 示例:用shape分別引用Circle和Rectangle子類(lèi)的對(duì)象
from abc import ABC, abstractmethodclass Shape(ABC):def __init__(self):self.area = None@abstractmethoddef get_area(self):passclass Circle(Shape):def __init__(self, r):self.radius = rdef get_area(self):return 3.14 * self.radius**2class Rectangle(Shape):def __init__(self, l, w):self.length = lself.width = wdef get_area(self):return self.length * self.widthcircle = Circle(5)
rectangle = Rectangle(4, 5)
lst = []
lst.append(circle)
lst.append(rectangle)
while len(lst) != 0:shape: Shape = lst.pop()print(f"面積:{shape.get_area()}")  # 不必關(guān)心它是具體哪種形狀### 輸出結(jié)果
面積:20
面積:78.5

四、聚合/組合

聚合/組合 Aggregation/Composition

  • 聚合/組合,都是描述整體與部分的關(guān)系

  • 聚合描述了一種“”關(guān)系。一個(gè)對(duì)象是另一個(gè)對(duì)象的一部分,或者一個(gè)對(duì)象包含一組其他對(duì)象。

  • 聚合關(guān)系是可傳遞的:如果A包含B, B包含C,那么A包含C。

  • 聚合關(guān)系是不對(duì)稱(chēng)的:如果A包含B,那么B不包含A

  • 組合是聚合關(guān)系的一個(gè)變種,是一種強(qiáng)依賴(lài)關(guān)系,表示部分和整體的生命周期是一致的,即部分不能脫離整體而單獨(dú)存在。部分對(duì)象只能存在于整體對(duì)象之中,整體對(duì)象控制部分對(duì)象的生命周期。

  • 有些時(shí)候,聚合與組合的關(guān)系不是很明確

五、接口/實(shí)現(xiàn)

接口/實(shí)現(xiàn) Interface /Implementation

  • 軟件系統(tǒng)的內(nèi)部是由大量的互相關(guān)聯(lián)的類(lèi)構(gòu)成的。當(dāng)對(duì)其中某一個(gè)類(lèi)的局部進(jìn)行修改的時(shí)候,不能影響其它的類(lèi)

  • 接口:描述一個(gè)類(lèi)的用戶(hù)如何與這個(gè)類(lèi)交互

  • 實(shí)現(xiàn):完成接口所定義的功能、任務(wù)。

    • 對(duì)實(shí)現(xiàn)的更改不應(yīng)該要求對(duì)用戶(hù)代碼進(jìn)行更改。
    • 用戶(hù)和實(shí)現(xiàn)都必須符合接口規(guī)范。
  • 示例:TV是顧客、用戶(hù),插座是接口,發(fā)電廠(chǎng)是實(shí)現(xiàn)

在這里插入圖片描述

六、抽象

抽象 Abstraction

  • 抽象表示一個(gè)對(duì)象與其他所有對(duì)象相區(qū)別的基本特征,因此提供了同觀(guān)察者角度有關(guān)的清晰定義的概念界限。
  • 抽象是專(zhuān)注于最重要的方面而忽略次要細(xì)節(jié)的過(guò)程。使得我們可以通過(guò)專(zhuān)注于實(shí)體區(qū)別于其他實(shí)體的關(guān)鍵特征來(lái)有效管理(降低)復(fù)雜性
  • 抽象就是過(guò)濾掉對(duì)象的一部分特性和操作,直到只剩下你所需要的屬性和操作

抽象是一種思維方式、一種思維能力

  • 抽象是面向?qū)ο箢I(lǐng)域發(fā)現(xiàn)類(lèi)的主要方法
  • 客觀(guān)世界的事物由各種各樣的實(shí)體(對(duì)象)構(gòu)成,每個(gè)對(duì)象都有各自的內(nèi)部狀態(tài)和運(yùn)動(dòng)(狀態(tài))規(guī)律
  • 根據(jù)對(duì)象的屬性和運(yùn)動(dòng)規(guī)律的相似性可以將對(duì)象分類(lèi)
    • 復(fù)雜對(duì)象由相對(duì)簡(jiǎn)單的對(duì)象組成
    • 不同對(duì)象的組合及其之間的相互作用和聯(lián)系構(gòu)成了系統(tǒng)
    • 對(duì)象間的相互作用通過(guò)消息傳遞,對(duì)象根據(jù)所接收到的消息做出自身的反應(yīng)

您正在閱讀的是《面向?qū)ο蠓治雠c設(shè)計(jì)Python版》專(zhuān)欄!關(guān)注不迷路~

http://aloenet.com.cn/news/32855.html

相關(guān)文章:

  • 婚禮顧問(wèn)網(wǎng)站介紹模版有哪些營(yíng)銷(xiāo)推廣方式
  • 用php做動(dòng)態(tài)網(wǎng)站嗎企業(yè)中層管理人員培訓(xùn)課程
  • 手機(jī)網(wǎng)站內(nèi)容模塊如何進(jìn)行網(wǎng)站宣傳推廣
  • 58網(wǎng)站怎么做優(yōu)化迅雷磁力鏈bt磁力種子
  • 合肥疫情風(fēng)險(xiǎn)等級(jí)思億歐seo靠譜嗎
  • 天津企業(yè)網(wǎng)站建站做一個(gè)公司網(wǎng)站大概要多少錢(qián)
  • 用自己電腦做網(wǎng)站的空間百度自媒體注冊(cè)入口
  • 南寧seo費(fèi)用服務(wù)短視頻seo系統(tǒng)
  • 黨政機(jī)關(guān)如何建設(shè)網(wǎng)站企業(yè)推廣網(wǎng)絡(luò)營(yíng)銷(xiāo)外包服務(wù)
  • 做網(wǎng)站如何與美工配合日本比分預(yù)測(cè)
  • 網(wǎng)站開(kāi)發(fā)速成班網(wǎng)絡(luò)軟文怎么寫(xiě)
  • 天津建設(shè)工程信息網(wǎng) 官網(wǎng)首頁(yè)seo排名點(diǎn)擊器曝光行者seo
  • 鄂州做網(wǎng)站公司推廣營(yíng)銷(xiāo)軟件app
  • 建設(shè)銀行梅州分行網(wǎng)站廈門(mén)seo怎么做
  • 武漢 網(wǎng)站制作案例北京建站
  • 平頂山網(wǎng)站建設(shè)費(fèi)用競(jìng)價(jià)排名是什么
  • 網(wǎng)站建設(shè)流程有東莞網(wǎng)站推廣方案
  • 成都模板網(wǎng)站建設(shè)網(wǎng)絡(luò)推廣優(yōu)化平臺(tái)
  • 下沙開(kāi)發(fā)區(qū)建設(shè)局網(wǎng)站廣州軟文推廣公司
  • 威海做網(wǎng)站多少錢(qián)百度助手app下載
  • 網(wǎng)站建設(shè)計(jì)劃網(wǎng)絡(luò)營(yíng)銷(xiāo)有什么崗位
  • 做網(wǎng)站論文網(wǎng)絡(luò)營(yíng)銷(xiāo)的模式有哪些?
  • 做二手車(chē)網(wǎng)站怎么做的外貿(mào)軟件排行榜
  • 網(wǎng)站建設(shè)倒計(jì)時(shí)模板推廣引流圖片
  • 網(wǎng)站開(kāi)發(fā)使用哪種語(yǔ)言免費(fèi)網(wǎng)站站長(zhǎng)查詢(xún)
  • 個(gè)人做網(wǎng)站如何賺錢(qián)嗎百度客服電話(huà)人工服務(wù)熱線(xiàn)電話(huà)
  • 北京市網(wǎng)站建設(shè)百度搜索推廣怎么做
  • 青島開(kāi)發(fā)區(qū)網(wǎng)站建設(shè)公司汽車(chē)seo是什么意思
  • 網(wǎng)站建設(shè)與網(wǎng)頁(yè)設(shè)計(jì)如何優(yōu)化百度seo排名
  • 魚(yú)滑怎么制作教程搜索引擎優(yōu)化seo的英文全稱(chēng)是