Есть ли разница между следующим? :Имеет ли смысл класс Java?
Пример 1:
public class OddEven {
private static void OddEven() {
//some calculation.
}
public static void main(String[] args) {
OddEven();
}
}
Пример 2:
public class OddEven {
private static void main(String[] args) {
OddEven();
}
private static void OddEven() {
//some calculation.
}
}
Причина, почему я спрашиваю, я всегда хожу с примером 2, положив Main первым. Хотя большинство примеров, которые я видел в Интернете, сначала ставили методы, прежде чем Main.
Я никогда не имел формальные уроки вычислений, и я прошу прощения, если это очевидный вопрос, но я хотел бы знать:
- ли порядок расположения просто эстетика, или конвенции?
- Имеет ли значение эффективность обработки и/или память?
- Если это так, это экономия, наблюдаемая для всех языков программирования?
Спасибо за любую помощь по этой теме.
Нет разницы с точки зрения памяти –
нет никакой разницы с основной метод, вы можете использовать его в любом месте класса – Sathesh
. Я предпочитаю статически статические методы/состояние, потому что поток кода более хронологический, то есть загрузчик классов сначала инициализирует статику. Затем, если создание экземпляра запускает конструктор, инициализаторы и т. Д. На уровне объекта. Смешение статического/объектного состояния делает класс более трудным для чтения и понимания, на мой взгляд. Если вы посмотрите на скомпилированный байт-код в декомпиляторе или получите методы и состояние через отражение, вы обнаружите, что независимо от порядка в исходном коде байт-код все перемешался и в другом, произвольном порядке , –