Здесь вы должны указать, имеет ли смысл использование наследования / композиции или нет. С именами классов ONE
и TWO
трудно сказать, поэтому позвольте мне привести еще один пример. Скажем, у нас есть класс Vehicle и Phone, например,
class Vehicle {
String model;
String color;
String type;
}
class Phone{
String model;
String color;
String type;
String brand;
Integer core;
Integer ramInGB;
}
Здесь классы Vehicle
и Phone
имеют несколько общих полей. Но вы не можете изменить Phone
, как это так
class Phone{
Vehicle v;
String brand;
Integer core;
Integer ramInGB;
}
или
class Phone extends Vehicle{
String brand;
Integer core;
Integer ramInGB;
}
Прежде чем использовать какой-либо шаблон проектирования где-либо, вы должны подумать, оправдано ли его использование в этом сценарии. Не используйте шаблоны проектирования только ради их использования.
Возвращаясь к примеру, если ОДИН и ДВА не связаны ни в каком смысле, вы должны оставить их в покое. Но если они есть, вы можете использовать наследование или композицию. Вот ссылка , которую вы, возможно, захотите пройти, прежде чем сделать этот выбор.