Комментарии 24
не понятно с final. Почему это эквивалентно? Что нам мешает наследоваться и не использовать конструктор?:)
И чем это лучше, чем сделать final abstract class UtilityClass?
Разве не так?
public final class UtilityClass
public final class UtilityClass
НЛО прилетело и опубликовало эту надпись здесь
Да, сам так делаю.
Правда, если задуматься — непонятно достоин ли этот мелкий момент внимания.
Всё равно у утилити-классе все методы статические и если кто-то захочет создать экземпляр подобного класса — да пожалуйста, какая разница. Но только никто не захочет потому что тупо незачем.
Правда, если задуматься — непонятно достоин ли этот мелкий момент внимания.
Всё равно у утилити-классе все методы статические и если кто-то захочет создать экземпляр подобного класса — да пожалуйста, какая разница. Но только никто не захочет потому что тупо незачем.
С точки зрения удобочитаемости лучше помимо приватного конструктора объявлять класс final. Современные IDE по этому модификатору помечают класс специальной иконкой, что позволяет наглядно выделять подобные классы в списке. Также это является дополнительным документированием направления мыслей разработчика.
Кстати, если уж совсем копнуть вглубь, то в Java (по крайней мере в 1.5.* версиях Sun Hotspot) можно наследоваться от final класса в каком-то смысле ;).
www.wasm.ru/article.php?article=unsjav1
Disclaimer: все это не для того, чтобы использовать, а просто пример того, что в принципеудалять зубы через задний проход наследоваться от final-class иногда возможно.
www.wasm.ru/article.php?article=unsjav1
Disclaimer: все это не для того, чтобы использовать, а просто пример того, что в принципе
мда. это ж надо умудриться на основе двух строк из замечательной книги Блоха написать целую статью, а потом еще устроить обсуждение. Браво!
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Abstract и Final class одновременно в языке программирования Java?!