"""
面向对象编程基础
把一组数据结构和处理它们的方法组成对象(object),
把相同行为的对象归纳为类(class),
通过类的封装(encapsulation)隐藏内部细节,
通过继承(inheritance)实现类的特化(specialization)和泛化(generalization),
通过多态(polymorphism)实现基于对象类型的动态分派。
简单理解:就像开公司一样,每个部门都有分工,每个人都有自己的工作。
每段代码都有自己的工作(用途),对象(人)
他们使用的共同资料,(使用共同的参数)
把使用共同参数的方法放在一个类里边。
"""
# 定义类
class Student():
# init方法给self(类中虚拟的对象)添加属性
def __init__(self, name, age):
self.name = name
self.age = age
# 创建方法(含参)
def study(self, course_name):
print('%s在学习%s.' % (self.name, course_name))
# 创建方法(不含参)
def watch_av(self):
if self.age < 18:
print('%s只能观看《喜羊羊与灰太狼》' % self.name)
else:
print('%s可以观看苍老师演的电影了' % self.name)
# 创建对象
def main():
# 创建学生对象并指定姓名和年龄
stu1 = Student('她与断剑', 22)
# 调用对象的方法
stu1.watch_av()
stu1.study('python')
# 找个小屁孩来试一下
stu2 = Student('小明', 10)
# 调用对象的方法
stu2.watch_av()
stu2.study('python')
if __name__ == '__main__':
main()
运行结果如下: