扩展一下知识,整理了一下百度的汇总。
Python中分为经典类和新式类:
经典类:
class A():
pass
新式类:
class A(object):
pass
所以经典类和新式类的区别就是,在声明类的时候,新式类需要加上object关键字。
Python中经典类和新式类的区别:
区别主要体现在继承上:
Python的类可以继承多个类,Java和C#中则只能继承一个类
Python的类如果继承了多个类,那么其寻找方法的方式有两种
当类是经典类时,多继承情况下,会按照深度优先方式查找
当类是新式类时,多继承情况下,会按照广度优先方式查找
1、只有在python2中才分新式类和经典类,python3中统一都是新式类
2、在python2中 没有显示继承的object类的类,以及该类的子类都是经典类
3、在python2中,显示的声明继承object的类,以及该类的子类都是新式类
4、在python3中,无论是否继承object,都默认 继承object,即python3中所有类均为新式类
提示:如果没有指定基类, python的类会默认继承object类, object是所有python类的基类。
所以说p3都是广度优先
class people:
# 定义基本属性
name = ''
age