面向对象三大特性

面向对象三大特性
1.封装
    将属性和方法写入类中的操作即为封装
    封装可以为属性和方法添加私有权限

2.继承
    子类默认继承父类所有属性和方法
    子类可以重写父类属性和方法

3.多态
    定义:多态是一种使用对象的方式,子类重写父类方法,用父类方法调用不同子类对象,可以产生不同的执行结果
    优点:调用灵活,使代码和程序更通用
    多态实现步骤
        定义父类,提供公共方法
        定义子类,子类重写父类方法
        创建对象,调用不同的功能,传入不同的对象

多态

class Player(object):
    def position(self):
        pass

class Attack_p(Player):
    def position(self):
        print('attck!')

class Defend_p(Player):
    def position(self):
        print('defend!')

class Coach(object):
    def team(self,p):
        p.position()

ap = Attack_p()
dp = Defend_p()
C = Coach()

C.team(ap)
C.team(dp)

attck!
defend!