Ещё вот что интересное заметил. Ведь если в классе есть метод, который называется также, как и сам класс, то он автоматически вызывается при инициализации (ну или как правильно сказать) класса? Я вот сколько смотрел примеров создания простого приложения про это ничего сказано не было. Везде пишут, что первым вызывается startApp(). А вот фиг. Я проверил экспериментально. Если в классе есть метод с таким же названием, как и сам класс, то при запуске мидлета сначала вызывается он, а потом уже startApp(). У меня такой вопрос: этот метод будет вызываться только при первом запуске приложения или всегда перед startApp()? Если только при первом запуске приложения, то почему нигде не написано, что туда можно вынести код инициализации приложения? Почему пишут, что его надо в startApp() засовывать с проверкой не инициилизирован ли до сей поры ещё мидлет? Хотя с другой стороны, если, например главный класс имеет название a.class, и я в другом классе сделаю экземпляр (или это назвается объект-наследник?) этого класса:
public static a a;
. . .
a = new a();
, а у меня в классе a.class есть метод "a" и в нём код инициализации приложения, например:
display=Display.getDisplay(this);
// тут другой всякий код, например, определение переменных, присваивание им значений
, то произойдёт повторная инициализация и мидлет зависнет, запустится заново, вылетит (нужное подчеркнуть). То есть в принципе код инициализации можно засунуть в метод "a", но только при условии, что я не буду создавать в других классах объект с типом "a"? Я правильно рассуждаю? Хочу разобраться во всех мелочах.