Спасибо за ваш ответ Раззи. Вот как я это сделал:
Я создал абстрактный класс под названием "Rail". Затем выведены 2 подкласса «Нормальный» и «Электрифицированный». Создан абстрактный класс «Поезд», производные подклассы «HighSpeedTrain», «PassengerTrain», «GoodsTrain». Также «AcceleratedPassengerTrain» происходит от «PassengerTrain».
Тогда я использовал зависимость, как ты сказал.
- HighSpeedTrain ----> электрифицированные
- PassengerTrain ----> Normal,
Электрифицированные
- GoodsTrain ----> Обычный, электрифицированный
- AcceleratedPassengerTrain ----> электрифицированные
Но я не уверен, правда ли это. Другая проблема; «AcceleratedPassengerTrain» должен использовать только электрифицированный рельс. В моем решении, я думаю, что он также поддерживает нормальные рельсы, потому что он наследует от "PassengerTrain". Пожалуйста, скажите мне, что вы думаете о дизайне. Спасибо за вашу помощь.