0
我有一个抽象类甲从抽象类层次结构中获取正确的字段?
public abstract class A{
private int x;
public void doSomethingToX{...};
public int getX(){
return x;
}
我有7类,延伸A,每个7的以相同的方式实现doSomethingToX,所以在类A.如果类B扩展A中定义它,我调用B.doSomethingToX(),然后我调用B.getX(),我会得到B的X值还是会得到A的?
在我实际的程序我有一个的ArrayList对象
ArrayList<A> list;
我打电话:
list.add(new B());
list.get(index).doSomethingToX();
list.get(index).getX();
我会得到的x或B的?
所以我必须为每个类写getX()?有没有办法我只能写一次? –
如果你不覆盖类B的getX(),那么你将得到在A类的getX()上定义的值。 –
好的,谢谢。既然你先回答,我会给你答案 –