2021-06-10 Python基础知识——面向对象(4)

一、析构方法

析构方法是指:当一个对象删除或被销毁时,python解析器也会默认调用一个方法,这个方法是 

__del__() 方法。(魔术方法之一)

#示例
class Animal(object):          #创建一个ANimal类
    def __init__(self,name):   #利用__init__方法进行初始化定义
        self.name=name
        print('这是构造初始化的方法')
    def __del__(self):
        print('这是构析方法')
        print('这在没有手动调用情况下,解析器自动调用函数来释放内存空间')
        print('%s被清理了'%self.name)
    pass
d1=Animal('旺财')
d2=Animal('咪咪')

结果:
这是构造初始化的方法
这是构析方法
这在没有手动调用情况下,解析器自动调用函数来释放内存空间
旺财被清理了
这是构造初始化的方法
这是构析方法
这在没有手动调用情况下,解析器自动调用函数来释放内存空间
咪咪被清理了

二、单继承

  • 继承:和现实生活当中的继承是一样的,即子可以继承父的内容(父类的属性和行为),但值得注意的是,父类有的子类都有,但子类有的父类不一定有。
  • 利用好继承可以减少代码的重复书写
#示例
class Animal(object):   #创建一个动物类,以此作为父类
    def eat(self):      #定义一个eat方法
        print('吃饭了')
        pass
    def drink(self):    #定义一个drink实例方法
        print('喝水啦')
        pass
    
class Dog(Animal):      #创建一个狗类,是子类
    def wwj(self):      #定义一个wwj实例方法
        print('小狗在叫')
        pass

class Cat(Animal):      #创建一个猫类,是子类
    def mmj(self):      #定义一个mmj实例方法
        print('小猫在叫')
        pass
    
d1=Dog()                #创建Dog类的对象d1
d1.eat()                #子类的d1拥有父类的eat方法
c1=Cat()                #创建Cat类的对象d2
c1.eat()                #子类的对象c1拥有父类的eat方法 
c1.mmj()                #子类自己的mmj方法

结果:
吃饭了
吃饭了
小猫在叫
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值