Я хочу проверить, является ли атрибут "myfield" пустым или нет.
Сначала я попробовал следующий сегмент кода.Но это всегда вызывает метод типа объекта.и он вернул неправильный ответ для объектов типа списка (Коллекции)
public class Validator{
private T myField;
....
...
public boolean isEmptyCheck(){
return isEmpty(myField);
}
private boolean isEmpty(Collection<?> coll){
return coll.isEmpty();
}
private boolean isEmpty(Object obj){
return obj.toString().isEmpty();
}
}
Затем я попробовал следующий сегмент кода, используя экземпляр метода.
public class Validator{
private T myField;
.....
....
public boolean isEmptyCheck(){
if (myField instance of Collection<?>){
retrun (Collection)myField.isEmpty();
}
else
return myField.toString().isEmpty();
}
}
Работает правильно.Но, как я знаю, экземпляр метода не является хорошей практикой для базовых проектов ООП.Я хочу знать, есть ли другое лучшее решение для этого сценария?Если нет, что я могу сделать, чтобы улучшить это решение?