类的特殊方法
- 学习特殊方法:
- 1.特殊方法什么时候调用
- 2.特殊方法有什么作用
#1.name属性是必须的
#2.name是不同的
#3.手动添加非常容易出现错误
# 我们希望在创建对象的时候必须设置name属性,如果不设置,对象无法创建
class Person:
# name = '葫芦娃'
# 在类中有一些特殊方法(魔术方法)
# 特殊方法都是以双下划线__开头和结尾的方法
# 特殊方法不需要我们自己调用
# 特殊方法会在特殊时刻自己调用
def __init__(self, name):
#print('init方法执行了')
# 通过self初始化属性
self.name = name
def speak(self):
print('大家好,我是%s'%self.name)
p1 = person('钢铁侠') #init方法执行了
#手动向对象中添加name属性
#p1.name = '钢铁侠'
p1.speak() # 大家好,我是钢铁侠
'''
类的基本结构
class 类名(父类):
公共属性
#对象初始化的方法
def __init__(self, ...):
...
# 其他的方法
def ...
'''
封装的引入
- 现在我们需要一种方式来增强数据的安全性
- 1.属性不能随意修改
- 2.属性不能改为任意值