python 基础系列15-面向对象

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

# python 基础系列15-面向对象

# 引入sys库
import sys
import copy
from functools import reduce
import os

import pickle
import re


class A:
    def __init__(self):
        self.num = 1
        print('这是A类........')

    @classmethod
    def func(cls):
        print('父亲很有钱')

    def fun2(self):
        print('父亲的方法')


class B(A):
    pass


class C(A):
    def __init__(self):
        self.name = 2
        print('C子类的构造函数')

    def fun2(self):
        print('子类给重写')


class D(B, C):
    def __init__(self):
        self.name = 2
        print('D子类的构造函数')

    def __call__(self):
        print('内建函数')

class F():
    def __init__(self):
        print('init...')
    def __del__(self):
        print('del....')

    def __new__(self):
        print('new.....')
        return super(F,self).__new__(self)

if __name__ == '__main__':
    print('----面向对象----')
    # 继承 B 继承 A类
    B.func()
    print(B.__bases__)  # (<class '__main__.A'>,)

    # 如果子类没有构造函数 会继承父类的
    b = B()

    # 子类有构造函数
    c = C()
    print(c.name)

    # 多继承 多继承的话,构造器继承是从左到右
    d = D()

    # 多态 就是重写父类的方法
    c.fun2()
    print(isinstance(c, A))
    # print(isinstance(a,A))
    print(isinstance(c, C))

    # 其他类中的构建函数 call函数 ,del函数 new函数  init函数
    #call函数
    d()

    #del函数
    f = F()
    del f #这是删除函数,删除掉实例对象,默认我们不需要重写
    #new 函数 是最先执行 然后是init再执行,最后是del执行
    
    #slots 函数 限定一个类的成员变量,指定了范围写死
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值