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())

posted @   wakappxc  阅读(5)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示