建立員工類,員工有姓名和薪資屬性,定義類和建立例項物件呼叫方法
class
employee
: emp_count=
0 def __init__
(self,name,salary)
: self.name=name
self.salary=salary
employee.emp_count+=1
def display_count
(self)
:print
("員工總數%d"
%employee.emp_count)
def display_employee
(self)
:print
("姓名:"
,self.name,
",薪資:"
,self.salary)
#建立employee類的第乙個物件
emp1=
employee
("zero"
,2000
)#建立employee類的第二個物件
emp2=
employee
("manni"
,5000
)emp1.
display_employee()
emp2.
display_employee()
print
("員工總數: %d"
% employee.emp_count)
self代表類的例項,self在定義類的方法時是必須要有的,在呼叫時不必傳入相應的引數嗎,它是被系統自動傳入的。
例項化的物件通過__init__方法接收引數
2、繼承例項
class
person
: def __init__
(self,name,age,gender)
: self.name=name
self.age=age
self.gender=gender
class
student
(person)
: def show
(self)
:print
('姓名:'
,self.name,
'年齡:'
,self.age,
'性別:'
,self.gender)
# print("名字:",self.name)
# print("年齡:",self.age)
# print("性別:",self.gender)
lilei=
student
('李磊'
,'20'
,'男'
)lilei.
show()
hanmeimei=
student
('韓梅梅'
,'21'
,'女'
)hanmeimei.
show
()
執行結果:
姓名: 李磊 年齡: 20 性別: 男
姓名: 韓梅梅 年齡: 21 性別: 女
3、家庭familly類
class
familly()
: def __init__
(self,surname,num,age)
: self.surname=surname
self.num=num;
self.age=age
def get_surname
(self):if
isinstance
(self.surname,str)
:return self.surname
def get_num
(self):if
isinstance
(self.num,
int)
:return self.num
def get_age
(self)
: sum=
0for i in self.age:
sum=sum+i
ifisinstance
(sum,
int)
:return
round
(sum/
len(self.age)
)xiaok=
familly
('開',4
,[20,
24,45,
40])print
("姓氏:"
,xiaok.
get_surname()
)print
("人數:"
,xiaok.
get_num()
)print
("家庭平均年齡:"
,xiaok.
get_age()
)
4、使用@property給screen類加上width和height屬性,以及唯讀屬性resolution
class
screen
(object)
: @property
def width
(self)
:return self._width
@width.setter
def width
(self,value)
: self._width=value
@property
def height
(self)
:return self._height
@height.setter
def height
(self,value)
: self._height=value
@property
def resolution
(self)
:return self.width*self._height
#測試s=
screen()
s.width=
1024
s.height=
768print
('resolutin='
,s.resolution)
if s.resolution==
1024
*768
:print
('測試通過'
)else
:print
('測試失敗'
)
解析:分別定義screen類的width與height方法,每個方法中都有getter與setter方法,使用@property將方法變成屬性。 Python 物件導向 類與繼承簡單示例
python 是一門物件導向的設計語言,與此對應的就是面向過程程式設計與函式式程式設計 物件導向的乙個優點就是更好的增強 的重用性。面向過程程式設計可以簡單的理解為 重點在步驟,將乙個任務完成所需要的所有步驟羅列出來 物件導向則可以理解為 重點在物件,打個比方的話就是在人,完成一項任務需要哪些人,這...
C 類繼承示例
c 的子類與孫子類都實現了虛函式時,孫子類的實現會覆蓋掉子類的實現。繼承的最主要的應用就是把不同的類放到乙個陣列中,然後遍歷呼叫同名函式。例項如下 include include include using namespace std class parent virtual void printn...
Python類與繼承
2.1 類定義 class classname 1 2.2 類物件 類物件建立後,類命名空間中所有的命名都是有效屬性名。類物件有兩種操作 屬性引用 obj.name 和例項化 類定義了init 方法的話,類的例項化操作會自動呼叫init 方法。init 方法可以有引數,引數通過init 傳遞到類的例...