第二个月面向对象
代码块
class Dou():
def __init__():#初始化属性
def __str__():#格式化输出,要有返回值
def __del__():#删除对象时执行
def __new__():#创建对象时使用
... prompt'''
上面是面向对象是常用的四种魔法方法,如果出现多个类 当子类需要父类的属性时,可继承。
* Python中没有像C++中public和private这些关键字来区别公有属性和私有属性
* 它是以属性命名方式来区分,如果在属性名前面加了2个下划线’__’,则表明该属性是私有属性,否则为公有属性(方法也是一样,方法名前面加了2个下划线的话表示该方法是私有的,否则为公有的)。
从类方法和实例方法以及静态方法的定义形式就可以看出来,类方法的第一个参数是类对象cls,那么通过cls引用的必定是类对象的属性和方法;而实例方法的第一个参数是实例对象self,那么通过self引用的可能是类属性、也有可能是实例属性(这个需要具体分析),不过在存在相同名称的类属性和实例属性的情况下,实例属性优先级更高。静态方法中不需要额外定义参数,因此在静态方法中引用类属性的话,必须通过类对象来引用
网友评论