python个人学习——面向对象编程OOP

2020-05-16  本文已影响0人  布织岛

面向过程:为了简化程序设计,把大块函数通过切割成小块函数来降低系统的复杂度。

面向对象:把计算机程序视为一组对象的集合,而每个对象都可以接收其他对象发过来的消息,并处理这些消息,计算机程序的执行就是一系列消息在各个对象之间传递。

面向对象的设计思想是抽象出Class,根据Class创建Instance。

面向对象的抽象程度又比函数要高,因为一个Class既包含数据,又包含操作数据的方法。

数据封装、继承和多态是面向对象的三大特点。

继承

继承有什么好处?最大的好处是子类获得了父类的全部功能。

多态

当子类和父类都存在相同的run()方法时,我们说,子类的run()覆盖了父类的run(),在代码运行的时候,总是会调用子类的run()。这样,我们就获得了继承的另一个好处:多态。

为了统计学生人数,可以给Student类增加一个类属性,每创建一个实例,该属性自动增加:

代码:

class Student(object):

    count =0

    def __init__(self, name):

        self.name = name

        Student.count=Student.count+1  //在小函数中,因为,没传入一个实例,这一句就被执行一次

#测试

if Student.count !=0:

print('fail')

else:

bart = Student('Bart')

if Student.count !=1:

print('fail')

else:

lisa = Student('Bart')

if Student.count !=2:

print('fail')

else:

print('Students:', Student.count)

print('success')

上一篇下一篇

猜你喜欢

热点阅读