Я думаю, что это личный выбор.
Однако я люблю организовывать свои занятия как таковые.
public class classname
{
<member variables>
<constructors>
<destructor>
<public methods>
<protected methods>
<private methods>
}
Причина этого как таковая.
Переменные-члены вверху
Чтобы увидеть, какие переменные-члены существуют и инициализируются ли они.
Конструкторы
Чтобы узнать, настроены ли переменные-члены и каковы все параметры построения для класса.
Destructor
Чтобы увидеть, как очищается класс, и проверить его с помощью конструкторов и переменных-членов.
Открытые методы
Для просмотра доступных контрактов можно использовать вызывающие объекты объекта.
Защищенные методы
Чтобы увидеть, какие унаследованные классы будут использовать.
Приватные методы
Поскольку это информация о внутренностях класса, если вам нужно было знать о внутренностях, вы можете просто быстро прокрутить до конца. Но знать интерфейс для класса - это все с самого начала.
ОБНОВЛЕНИЕ - на основе обновления ОП
Логически хорошим способом было бы организовать методы по категориям того, что они делают.
Таким образом, вы получаете возможность категоризации ваших методов, а также алфавитный поиск в вашей IDE (при условии, что это в вашей IDE).
Однако в практическом смысле я считаю, что размещение методов в конце этого раздела - лучший способ. Было бы довольно сложно постоянно следить за тем, куда направляется каждый метод, поскольку он субъективен, для каждого метода, если код используется совместно вами.
Если бы вы сделали это стандартом, было бы довольно сложно определить границы для размещения каждого метода.