我有几个父母班的孩子。我希望父母实施返回数据的方法。但是,这些数据只能由孩子正确填充。
这是用Java做到这一点的理想方法吗?有没有办法让只有孩子才能调用该方法?
public class MyParent {
public MyData getData() {
}
}
public class MyChildA extends MyParent {
@override
public MyData getData() {
}
}
答案 0 :(得分:1)
尝试一下抽象类。
抽象类是被声明为抽象的类-它可能包含也可能不包含抽象方法。抽象类不能被实例化,但是可以被子类化。
抽象方法是这样一种方法,该方法无需实现即可声明(不带花括号,后跟分号),如下所示:
abstract void moveTo(double deltaX, double deltaY);
如果类包含抽象方法,则必须将类本身声明为抽象,如:
public abstract class GraphicObject {
// declare fields
// declare nonabstract methods
abstract void draw();
}
希望有帮助。
答案 1 :(得分:0)
使您的父类成为Abstract类。
public abstract class MyParent {
public abstract void getData();
}
public class MyChildA extends MyParent {
@Override
public void getData() {
// statements
}
}
您的问题有点模棱两可,所以我不知道这是否是您想要的。