A a=new B()的意义 前提:A是B的父类. A a = new B(); 或 A a; B b=new B(); a=b; 这一句的过程是这样的, 1)创建一个类A的引用a 2)创建一个类B的实例 3)把类B的引用赋值给a 因为A是B的父类,所以,赋值成功. 过程: 当消息发送到子类并要求以确定的参数调用其中一个方法时: 消息的处理如下沿着类链自下而上逐级查找,直到找到符合消息所要求的方法为止. 子类检查是否有同名且参数完全对应(参数的个数.类型.排列顺序均要相同)的方法, 若有, 就调
Python是个很灵活的语言,光看它的类和实例间属性的访问机制就可以看出这一点,不过这一点还真的不好理解,做了些测试之后我的理解是这样的: 实例在访问class属性时,先检索自己的names, 如果有的话就直接取出,没有的话就去找class的names里面找,找不到就是error啦 class Pclass(object): """docstring for Pclass""" num = 10 def __init__(self): super