我有一个抽象类Room的类,该类具有子类FamilyStandard,我在room = new ArrayList<Room>();类中创建了Hostel。我有一种向ArrayList添加空间的方法;

public String addRoom(String roomNumber, boolean ensuite)
{
    if  (roomNumber.equals(""))
        return "Error - Empty name field\n";
    else

    room.add( new Room(roomNumber,ensuite) );
    return  "RoomNumber: " + roomNumber + " Ensuite: " + ensuite
     + "  Has been added to Hostel " + hostelName;
}

但是我得到了编译时错误;



我知道抽象类无法实例化,但是添加房间的最佳方法是什么?

最佳答案

您有此错误,因为您试图创建一个抽象类的实例,这是不可能的。你必须

room.add(new Family(roomNumber, ensuoute));

要么
room.add(new Standard(roomNumber, ensuoute));

08-16 10:53