你可以这么理解,你继承父类,那么你就有了使用父类公有方法,公有属性的权利。但你在调用父类的公有方法时,若你没有重写该方法,那么你无论怎么执行,都不会干涉到它原有的方法实现。
就如你上面写的,Son继承了Father,只是继承了Father,getA() getB() 的使用权,在你没有在Son里面重写这两个方法时,那你只有访问权,没有更改其内部实现的权利。
虽然你Son里面定义了两个和父类中相同的属性,但本质上,你仍未影响到父类中的公有方法,所以父类中的方法原来返回啥,现在就返回啥。
想想Object.toString()方法,任何类虽然天然继承了Object类,如果不重写toString(),返回的值对于我们来说没有意义。
因为getA()和getB()是从父类中继承的方法,属于super区的(父类的)方法,并不能访问子类中的属性。父类中的int a b 和子类中的int a b都是独立存在的
因为你继承了父类,子类可以调有父类的所有属性和方法