我正在创建一个名为Building
的超类程序,这个类有一个变量,它是建筑物的地址。然后我有两个子类,一个叫做Apartment
,另一个叫做Restaurant
。
我定义了这样的类:
public class Apartment extends Building;
public class Restaurant extends Building;
现在我有一个功能public void register(Building build);
我想知道如何通过仅接收超级类来选择子类来存储信息。
E.g:
0.Apartment
1.Restaurant
Which building do you have?
现在,根据用户的回答,我会问
How many rooms, bathrooms, etc.
我的起点是Building
课我现在需要选择,如果用户回答0
我将使用Apartment
子类,否则我将使用Restaurant
子类。
我怎样才能做到这一点?
如果有更好的方法,请告诉我。
谢谢。
答案 0 :(得分:2)
你可以使用方法重载: 使用子类作为参数进行注册方法。做子类 那些方法的具体工作然后 打电话给 私人登记册(建筑物) 做共同工作的方法。