今天的码农女孩学习了关于python的面向对象的知识

面向对象
        封装:一个类就是一个封装,把具有共同属性和行为的对象封装在一起
        继承:子类继承父类,可以使用父类下的属性和方法
        多态:子类继承父类,定义了同名函数,执行内容不同
    类的定义
        class Emp:
                   name="张三"
                   age=23
                   def say(self):
                              print(self.name)
                              print(self.age)
        e=Emp()
        e.say()
    构造器
        用来赋初始值,后期可以修改,如果没有定义构造器,python会默认给一个无参的构造器,当对象被实例化后,第一个调用的函数就是构造器
    class Stu:
                def __init__(self,name,age):
                             self.name=name
                             self.age=age
                 def info(self):
                             print(self.name)
                             print(self.age)
    s=Stu("小红",12)
    s.info()
    print(s.name)
    get和set方法:
        get用来获取变量,set用来设置变量,提供给他人的执行权限
    class Stu:
            def __init__(self,name,age):
                    self.name=name
                    self._age=age#私有变量
            def getName(self):
                    return self.name
            def setName(self,name):
                    self.name=name
            def getAge(self):
                    return self._age
            def setAge(self,age):
                    self._age=age
    s=Stu("小明",23)
    print(s.getName())
    print(s.getAge())
    print(s.name)
    print(s.age)#报错

    继承
        class Father:
                name='aa'
                def sing(self):
                        print('aaaaaaaaaa')
        class Son(Father):
                age=23
        s=Son()
        print(s.name)
        print(s.age)
        s.sing()
    定义私有变量
        父类下的私有变量,子类无法使用
        class Father:
                name='aa'
                __sex='男'
        class Son(Father):
                age=23
        s=Son()
        print(s.name)
        print(s.__sex)#报错
    调用父类构造器
        class Father:
                def __init__(self,name):
                        self.name=name
        class Son(Father):
                def __init__(self,name,age):
                        Father.__init__(self,name)
                        self.age=age
        s=Son("小丽",12)
        print(s.name)
        print(s.age)
    多态(重写)
        class Father:
                def sing(self):
                        print("京剧")
        class Son(Father):
                def sing(self):
                        print("流行歌曲")
        s=Son()
        s.sing()
    多继承
        class A:
                a='a'
        class B:
                b='b'
        class C(A,B):
                c='c'
        c1=C()
        print(c1.a)
        print(c1.b)
        print(c1.c)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值