Comments 24
не понятно с final. Почему это эквивалентно? Что нам мешает наследоваться и не использовать конструктор?:)
И чем это лучше, чем сделать final abstract class UtilityClass?
Разве не так?
public final class UtilityClass
public final class UtilityClass
UFO just landed and posted this here
Да, сам так делаю.
Правда, если задуматься — непонятно достоин ли этот мелкий момент внимания.
Всё равно у утилити-классе все методы статические и если кто-то захочет создать экземпляр подобного класса — да пожалуйста, какая разница. Но только никто не захочет потому что тупо незачем.
Правда, если задуматься — непонятно достоин ли этот мелкий момент внимания.
Всё равно у утилити-классе все методы статические и если кто-то захочет создать экземпляр подобного класса — да пожалуйста, какая разница. Но только никто не захочет потому что тупо незачем.
С точки зрения удобочитаемости лучше помимо приватного конструктора объявлять класс 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: все это не для того, чтобы использовать, а просто пример того, что в принципе
мда. это ж надо умудриться на основе двух строк из замечательной книги Блоха написать целую статью, а потом еще устроить обсуждение. Браво!
Sign up to leave a comment.
Abstract и Final class одновременно в языке программирования Java?!