子类覆盖父类的函数,以父类身份运行时,实际调用的是子类的函数,但属性没有这种情况,以运行时身份为准,父类直接获取的就是父类的属性,子类获取的就是子类的属性,这个一般用不到;父类的方法A会调用方法B(方法A未被覆盖,方法B被覆盖,B非private方法),调用的是覆盖后的B方法