07 Python类的基本特性

#继承  下划线开头表示私有
class Human:
    def __init__(self,name): #init是初始化方法  self是实例化对象的本身 本质是一块内存
        self.name=name
        print('self->',self)
        #self.__xjb=name  #下划线表示是私有的
        
    def speak(self):
        print('Human在讲话'+self.name)

    def __test(self):  #定义一个私有的类也是一样的
        print('ceshi')


class XJB(Human):#继承只需要在里面写上一个我们所需要的类
    def __init__(self,name):
        self.xjb=name;
        super(XJB,self).__init__(name) #通过super调用init方法
        #self.__init__(name)  #调用自己会导致递归
        #XJB中init存在就不会想Human去匹配了 就是调用自己

    def speak(self):
        print('跑路')
        #self.speak() #直接调用
        super(XJB,self).speak()

def speak(obj):
    obj.speak()

    #def speak(self):
        #print('xjb在讲话'+self.name)

x1=XJB("xjb")
x2=Human("xjb2")
#x1.speak()
speak(x1) #相同一个函数 相同一个格式放进去 但是表现出不同的形态 这就是多态
speak(x2)
#print(x1.__xjb)  #是打印不出来的
#print(x1.__test())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值