物件導向概念

來源:互聯網
上載者:User

標籤:簡單的   就是   解決問題   角色   備份   繼承   調用   下一步   物件導向   

實現不同種類之間功能無法互相調用

def dog(name,dog_type):
def bark(d):
print("dog %s: 汪。。汪。汪。。。"%d["name"])
data={"name":name,
"type":dog_type,
"bark":bark
}
return data

def person(name,age,sex,job):
def run(p):
print("person %s is running...."%p[‘name‘])
data={"name":name,
"age":age,
"sex":sex,
"job":job}
return data

d1=dog("豆豆","京巴")
p1=person("王道",33,"F","混混")
p2=person("王渣",33,"F","混混頭領")

print(d1‘bark‘)

面向過程編程

面向過程又被稱為top-down languages, 就是程式從上到下一步步執行,一步步從上到下,從頭到尾的解決問題 。基本設計思路就是程式一開始是要著手解決一個大的問題,然後把一個大問題分解成很多個小問題或子過程,這些子過程再執行的過程再繼續分解直到小問題足夠簡單到可以在一個小步驟範圍內解決。這樣做的問題也是顯而易見的,就是如果你要對程式進行修改,對你修改的那部分有依賴的各個部分你都也要跟著修改, 舉個例子,如果程式開頭你設定了一個變數值 為1 , 但如果其它子過程依賴這個值 為1的變數才能正常行,那如果你改了這個變數,那這個子過程你也要修改,假如又有一個其它子程式依賴這個子過程 , 那就會發生一連串的影響,隨著程式越來越大, 這種編程方式的維護難度會越來越高。所以我們一般認為, 如果你只是寫一些簡單的指令碼,去做一些一次性任務,用面向過程的方式是極好的,但如果你要處理的任務是複雜的,且需要不斷迭代和維護的, 那還是用物件導向最方便了。

def db_conn():
print("connecting db...")

def db_backup(dbname):
print("匯出資料庫...", dbname)
print("將備份檔案打包,移至相應目錄...")

def db_backup_test():
print("將備份檔案匯入測試庫,看匯入是否成功")

def main():
db_conn()
db_backup(‘my_db‘)
db_backup_test()

if name == ‘main‘:
main()

類的特性封裝
1.防止資料被隨意修改。2.是外部程式不需要關注對象內部的構造,只需要通過此對象對外提供的介面進行直接存取即可
繼承
通過父類-》子類的方式以最小代碼量的方式實現不同角色的共同點和不同點的同時存在
多態
  比如都是人類,都能說話,但是不同的人說話方式不一樣。一個說話介面,多種實現方式。中國人說中文,美國人說英語。

物件導向概念

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.