Я видел в прошлом месяце реализацию шаблона Null Object как то, что казалось полем Singleton для типа. Однако я не могу вспомнить этот подход. Я работаю над шаблонами и осознаю, что они не соответствуют действительности.Null Object Pattern - public static final
С моей точки зрения, я думаю, что это будет следующим, но могу ли я получить обзор?
public final class SearchCriteriaAnomalyFilter {
public static final SearchCriteriaAnomalyFilter NULL_INSTANCE;
private final T2AnomalyStatus status;
private final T2AnomalyType type;
private final boolean limitMaxOneAnomaly;
public SearchCriteriaAnomalyFilter(T2AnomalyStatus status, T2AnomalyType type,
boolean limitMaxOneAnomaly){
this.status = status;
this.type = type;
this.limitMaxOneAnomaly = Boolean.valueOf(limitMaxOneAnomaly);
}
private SearchCriteriaAnomalyFilter(){}
public static SearchCriteriaAnomalyFilter instanceOfNullObject(){
if (NULL_INSTANCE == null) {
NULL_INSTANCE = new SearchCriteriaAnomalyFilter();
}
return NULL_INSTANCE;
}
...
}
Как насчет первого конструктора? Не нужно ? –
Мне кажется, что я могу статически инициализировать его 'instanceOf' или создав экземпляр, который может быть мне смешал два понятия, т.е. неизменяемость и нулевой объект. – Crowie
Задать вопрос здесь http://codereview.stackexchange.com/ – aalku