Салават Буляков
Салават Буляков

В каком порядке писать конструкторы, сеттеры, геттеры, поля и другие методы в классе?

1) конструкторы;
2) сеттеры;
3) геттеры
4) поля;
5) другие методы в классе.

Как принято? Если класс огромное полотно, то можно и запутаться.

CK
Constantine Kudryavtsev

наверное в разных "коллективах" принято что-то своё...
достаточно открыть несколько проектов на каком-нить гитхабе и посмотреть...

если у вас в классе чересчур много кода, то вы что-то делаете не так...

как вариант... используйте Project Lombok
это полезная библиотечка позволяет написать в классе поля и всё... (ну и аннотацию чтоб ломбок знал что здесь его ждут)... и теперь всё... все геттеры сеттеры конструкторы... туСтринг... хэш... и т. п. будут созданы на момент компиляции...
получается чистый код класса....

ТЛ
Татьяна Лабутина

Обычно сначала идут поля, потом конструкторы, потом методы. Дальше, они сортируются по модификаторам доступа - от public к private. Но в разных компаниях это может отличаться.

ЕШ
Евгений Шалов

Код должен быть максимально удобным для чтения.

Ты хочешь посмотреть реализацию чужого класса - на что ты в первую очередь будешь обращать внимание? На то, что используется в твоём коде - т. е. на public. И они должны быть на самом верху класса.

Если тебе нужно разобраться глубже - смотришь уже на protected и private - ниже по коду. И чем "глубже" в коде использование метода, тем ниже его определение - чтобы чтение шло - по возможности - сверху вниз.

P.S. Но, да: единого стандарта не существует и в разных компаниях используют разный code style.

Похожие вопросы
а есть какой то еще метод сделать пол ровным без стяжки? может еще другие естт какие то методы
Инициализация объектов класса в конструкторе и в специальном методе класса? В чем разница?
какие есть методы для подключения к информационному полю Земли?
в php какие параметры принимает конструктор класса mysqli_result ?
Что писать в уведомлении о выводе сотрудников, в порядке перевода в другую организацию?
Зачем мне 400 иженеров-конструкторов для какого-то гадкого ускорителя поля?
Как-то можно напрямую достучаться к внутренней переменной метода класса, не вынося её в класс?
За какое время можно выучить язык Java, чтобы писать Backend?
Почему Java по умолчанию не создаёт геттеры и сеттеры?
JAVA, наследовался от абстрактного класса, создал конструктор в классе-наследнике, но выдает ошибку