當(dāng)前位置:首頁 > IT技術(shù) > 編程語言 > 正文

Python 面向?qū)ο缶幊?br>2022-04-29 13:48:47

什么是面向?qū)ο螅?/h3>

面向過程:

一種以過程為中心的變成思想

簡(jiǎn)單的事情

面向?qū)ο螅?/p>

一種更符合人類思維習(xí)慣的編程思想

面向?qū)ο箝_發(fā)就是我們不斷創(chuàng)建對(duì)象,使用對(duì)象,操作對(duì)象來做事情

復(fù)雜的事情(難以找事件過程)

創(chuàng)建一個(gè)類別,例如汽車,人類等

?

語言層面:封裝代碼和數(shù)據(jù)

規(guī)格層面:對(duì)象是一系列可被使用的公共借口

從概念層面,對(duì)象是某種擁有責(zé)任的抽象

?

面向?qū)ο蟪绦蛟O(shè)計(jì)規(guī)則:

首先分析有哪些類

每個(gè)類有哪些屬性和行為

類與類之間存在的關(guān)系

?

專用名詞:

類:抽象的概念,一類事物

方法:類中定義的函數(shù),對(duì)外提供的服務(wù)

類變量:類變量在整個(gè)實(shí)例化的對(duì)象中是公用的

實(shí)例引用:實(shí)例化一個(gè)對(duì)象

實(shí)例變量:以self.變量名的方式定義的變量

?

?

例子:

?

class Person:
#類變量
name = "default"
age = 0
gender = 'male'
weight = 0
  #構(gòu)造方法,在類實(shí)例化的時(shí)候被調(diào)用
def __init__(self,name,age,gender,weight):
print("init")
    #實(shí)例的變量self.xx
self.name = name
self.age = age
self.gender = gender
self.weight = weight
def set_name(self,name):
self.name = name
  @classmethod
def eat(self):
print("eat")

def play(self):
print("play")
def jump(self):
print("jump")


zhangsan = Person('zhangsan',12,'female',23) #實(shí)例化Person類
zhangsan.eat()

print(zhangsan.name,zhangsan.weight,zhangsan.gender,zhangsan.ag
#實(shí)例變量和類變量都可以被修改
#類變量需要類來訪問,實(shí)例變量需要實(shí)例來訪問

print(Person.name)
Print(zhangsan.name)

#類方法和實(shí)例方法的區(qū)別
#類是不能訪問實(shí)例方法
#Person.play() -->這個(gè)會(huì)報(bào)錯(cuò)
#如果需要使用類訪問方法,可以在方法加@classmethod 使該方法可以被類訪問
Person.eat() #可被調(diào)用

本文摘自 :https://www.cnblogs.com/

開通會(huì)員,享受整站包年服務(wù)立即開通 >