面向对象基础三

1 继承

  • 继承概念: 指一个类获取到其它一个或多个类中的属性和方法,但是父类(也称超类、基类)中的属性或者方法不能被继承
  • 继承方式: 定义类时,在类后面的括号中指定当前类的父类
  • 作用: 提高了类的复用性,使得类之间产生了关系,也因此有了多态的特性
  • super(): 获取当前类的父类,并且可以用于调用父类的方法,直接用类名调用父类方法多用于单继承,但是如果使用多继承,会涉及到查找顺序、重复调用等种种问题。
class A:
    a1 = '公有类属性'
    __a2 = '私有类变量'

    def Pr(self):
        print('类名访问类公有变量', A.a1)
        print('对象访问类公有变量', self.a1)

    def Pr2(self):
        print('对象访问类私有变量', self.__a2)
        print('类访问类私有变量', A.__a2)

    def Pr3(self, name):
        self.name = name
        print('对象访问普通对象属性', name)

    def Pr4(self, name):
        self.__name = name  # 私有类属性
        print('对象访问私有对象属性', self.__name)

    def __Pr5(self):             # A类私有方法,只能在类内访问
        return (self.a1)

    def Pr5(self):
        print('类访问私有方法',A.__Pr5(self))
        print('对象访问类私有方法',(self.__Pr5()))

    @classmethod
    def Pr6(cls):
      cls.Pr4(cls,'QQQ')


    @staticmethod
    def Pr7(x):
        print(super(x))
        print(x.__Pr5(x))
        x.Pr3(x,'qwwe')


class B(A):
    b1 = 'b1'

    def Prb(self):
        print(self.b1)
        super().Pr4('mmmmmmm')

# 通过类内访问
print('通过类内访问')
x = B()
x.Pr
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值