零基础入门学习python-类和对象

面向对象程序设计具有三大基本特征:封装,继承和多态。

  1. 封装:封装是面向对象编程的核心思想,将对象的属性和方法封装起来,其载体就是类,类通常会对客户隐藏一些其实现细节,这就是封装的思想。
  2. 继承:继承是实现重复利用的重要手段,子类通过继承复用了父类的属性和方法的同时又添加了子类特有的属性和方法。
  3. 多态:子类继承父类特征的同时,也具备了自己的特征,并且能够实现不同的效果。

super()函数是用于调用父类的一个方法。
super是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没有问题,但是如果使用多继承(MRO)、重复调用(钻石继承)等问题
MRO就是类的方法解析顺序表,其实也就是继承父类方法的顺序表

super()方法的语法:

super(type[,object-or-type])

参数

  • type–类
  • object-or-type–类,一般是self

类和对象相关的BIF:

issubclass(class,classinfo)
#如果"class""classinfo"的一个子类,则返回True,否则返回False
isinstance(object,classinfo)
#如果"object""classinfo"的实例对象,则返回True,否则返回False
hasattr(object,name)
#如果"object"中有属性"name",则返回True,否则返回False
getattr(object,name[,default])
#如果"object"中没有"name"属性,则返回"default"中的值。如果没有设置"default"参数,则抛出ArttributeError异常
setattr(object,name,value)
#如果"object"中没有"name"属性,则新建一个名为"name"的属性,值为"value"
delattr(object,name)
#删除"object"中名为"name"的属性,如果属性不存在,则抛出AttributeError的异常
property(fget=None,fset=None,fdel=None,doc=None)
例如:
class C:
    def __init__(self,size=10):
        self.size=size
    def getSize(self):
        return self.size
    def setSize(self,size):
        self.size=size
    def delSize(self):
        del self.size
    x=property(getSize,setSize,delSize)

这里写图片描述
这里将c.x 做重新赋值和删除操作的的话,c.size属性也会有做出相同的操作
这就是property的作用,property()会返回一个可以设置属性的属性,如何设置属性需要人为的来写代码。第一个参数是获取属性,第二个参数是设置属性,第三个是删除属性。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值