Я ищу чистый и безопасный способ гарантировать, что поле класса никогда не будет установлено в нуль. Я хотел бы, чтобы значение поля устанавливалось один раз в конструкторе класса и никогда не изменялось позже. Я думаю, что ключевое слово readonly в C# позволяет это. Есть ли способ сделать то же самое в Java?Как обеспечить, чтобы поле никогда не было пустым в классе Java
class foo
{
private Object bar;
public foo(Object pBar)
{
if(pBar == null)
{
bar = new Object();
}
else
{
bar = pBar
}
}
// I DO NOT WANT ANYONE TO MODIFY THE VALUE OF bar OUT OF THE CONSTRUCTOR
}
+1, но я думаю, что было бы лучше выбросить исключение или использовать assert, а не просто назначить новый Object(). –