Классы на Java - PullRequest
       19

Классы на Java

1 голос
/ 10 марта 2011

Я новичок в Java, так что это будет вопрос новичка, вот он:

У меня есть класс Самолет. Но у меня должны быть разные самолеты (например, PassengerPlane или CargoPlane) Тогда я должен использовать эти самолеты в другом классе (например, Аэропорт) как Самолет.

Я имею в виду, как я могу иметь разные атрибуты (у CargoPlane максимальная вместимость, для passengerPlan, например, максимальное количество пассажиров) в самолете того же класса?

Заранее спасибо.

Ответы [ 2 ]

5 голосов
/ 10 марта 2011

Базовый класс самолета может быть абстрактным или даже интерфейсом.

class Airplane{ 
//common attributes
}

class PassengerPlane extends Airplane{
//passenger plane specific attributes
}

class CargoPlane extends Airplane{
//cargo plane specific attributes
}

class Airport
{
List<Airplane> airplanes;
// do stuff with planes

}
1 голос
/ 10 марта 2011

Класс Самолет должен иметь только те атрибуты, которые являются общими для всех самолетов. Такие вещи, как fuelLevel и т. Д.

И как уже говорили другие, специальные атрибуты входят в подклассы:

class Airplane {
    int fuelLevel;
}

class CargoPlane extends Airplane {
    int maxCapacity;
}

class PassengerPlane extends Airplane {
    int maxPassengers;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...