面向对象编程的三大特性
·封装
将属性和方法书写到类的里面的操作即为封装
封装可以为属性和方法添加私有权限
·继承
子类默认继承父类的所有属性和方法
子类可以重写父类的属性和方法
·多态
传入不同的对象,产生不同的结果
一.封装
1.init()方法的作用,初始化对象
在创建一个对象时默认被调用,不需要手动调用。
init(self)中的self参数不需要开发者传递,python解释器会自动把当前的对象传递过去。
class Computer(self,width,height)
def __init__(self):
self.width = width
self.height = height
def print_info(self):
print(f'电脑的宽度是{self.width}')
print(f'电脑的高度是{self.height}')
dell = Computer(40,20)
dell.print_info()
2.str()
如果定义了__str__方法,那么就会打印这个方法的return数据。
class Computer(self,width,height)
def __init__(self):
self.width = width
self.height = height
def __str__(self):
return '这是戴尔的说明书'
dell = Computer(40,20)
print(dell) #'这是戴尔的说明书'
3.del()
删除对象时,python解释器也会默认调用__del__()方法
class Computer(self,width,height)
def __init__(self):
self.width = width
self.height = height
def __del__(self):
print(f'{self}对象已被删除')
dell = Computer(40,20)
del dell #<__main__.Computer object at xxxxxxxxxx>对象已被删除