Если у вас есть массив значений типа double, и каждый элемент массива в определенной позиции имеет определенное значение, вы должны вместо этого создать класс.
public class MyParamBlob extends ParentParamBlob
{
private double myReadableParameter;
private double anotherParameter;
private double yetOneMore;
// getters and setters as appropriate
}
Если вам нужно иметь дело с существующим double[]
из«снаружи» у вас может быть конструктор и / или метод, который принимает массив в качестве параметра.
public class MyParamBlob
{
...
public MyParamBlob(double[] values)
{
setAll(values);
}
// getters and setters as appropriate
...
public void setAll(double[] values)
{
myReadableParameter = values[0];
anotherParameter = values[1];
// etc.
}
}
Изменить - объяснить мой комментарий
Если исходный родительский классчто это подкласс (причина, по которой double [] существует на первом месте) имеет геттер для массива, который может быть переопределен в этом классе, создавая и возвращая массив по запросу - например,
public double[] getParams()
{
double[] params = new double[4];
params[0] = myReadableParameter;
params[1] = anotherParameter;
// etc.
}
Если массив напрямую доступен из экземпляра родительского класса, без получения, например, myArray = parentInstance.params
или double d2 = parentInstance.params[2]
, то (1) это плохой дизайн и (2) вызывающие могут изменитьсязначения массива из-под вас parentInstance.params[1] = 0.0;