1. 封装
- 封装是面向对象编程的一大特点
- 面向对象编程的第一步 – 将属性和方法封装到一个抽象的类中
- 外界使用类创建对象,然后让对象调用方法
- 对象方法的细节都被封装在类的内部
- 一个对象的属性可以是另外一个类创建的对象
2. 案例演练
2.1 案例1:小明爱跑步
需求
- 小明体重75.0公斤
- 小明每次跑步会减肥0.5公斤
- 小明每次吃东西体重增加1公斤
提示:在对象的方法内部,是可以直接访问对象的属性的。
代码实现
class Person:
def __init__(self,name,weight):
# self.属性 = 形参
self.name = name
self.weight = weight
def __str__(self):
print("我的名字叫 %s 体重是 %.2f 公斤" % (self.name, self.weight))
def run(self):
print("%s 爱跑步,跑步锻炼身体" % self.name)
self.weight -= 0.5
def eat(self):
print("%s 是吃货,吃完这顿再减肥"% self.name)
self.weight += 1
xiaoming = Person("小明",75.0)
xiaoming.run()
xiaoming.eat()
print(xiaoming)
output:
小明 爱跑步,跑步锻炼身体
小明 是吃货,吃完这顿再减肥
我的名字叫 小明 体重是 75.50 公斤
2.2 案例1扩展:小美也爱跑步
需求
- 小明和小美都爱跑步
- 小明体重75.0公斤
- 小美体重45.0公斤
- 每次跑步会减肥0.5公斤
- 每次吃东西体重增加1公斤
提示:
- 在对象的方法内部,是可以直接访问对象的属性的
- 同一个类创建的多个对象之间,属性互不干扰
# 接上代码
xiaomei = Person