Для простоты я опишу базовый пример.Установка значения константы в Java после объявления
Если я использую запись (STRUCT) в моей Java программы, как так:
public class Store{
class Product{
final int item1;
final int item2;
final int item3;
}
и создать конструктор для моего класса, который будет принимать значения для представления значения каждого элемента:
public Store(int[] elements) {
Product x = new Product();
x.item1 = elements[0];
x.item2 = elements[1];
x.item3 = elements[2];
}
}
компилятор дает мне две ошибки:
«заготовка последнее поле item1 не может быть инициализирован
«Конечное поле не может быть назначено»
Я понимаю, что мы не можем повторно назначать значения константам, но есть ли способ присвоить значения неинициализированным константам?
'final' переменная не может быть изменена. он должен быть инициализирован во время объявления. – Rustam
Вы можете инициализировать свой финал в своем классе. Это то, что вы должны делать. Поэтому создайте конструктор, который сделает это. –
'Продукт x = новый продукт,' это утверждение правильно? – Rustam