У меня есть случай использования, когда мне нужно создать экземпляр данного класса только с указанными c переменными, основанными на значении переменной (скажем, в этом примере) typeName. Для переменной String typeName, если ее значение равно TYPE-1, только указанный c набор переменных (a, b, c) должен быть разрешен для создания экземпляра. Точно так же, если его значением является TYPE-2, только другой набор переменных (x, y, z) должен быть разрешен для создания экземпляра.
if(typeName == "TYPE1")
{
CentralClass class = new CentralClass(a,b,c); //initiating only variable a,b,c
}
else
{
CentralClass class = new CentralClass(x,y,z); //initiating only variable x,y,z
}
Структура класса
public class CentralClass {
String typeName; //ALLOWED Values TYPE1, TYPE2
String x;
String y;
String z;
String a;
String b;
String c;
}
Что было бы наилучшим способом сделать это с помощью любого шаблона проектирования et c.
Примечание : Структура класса открыта для изменения. У нас может быть несколько классов (клубные разные переменные), внутренние классы, классы stati c или любой другой шаблон проектирования и т. Д.