20.01.2010 Ну...тут, короче... Мне делать нечего, решил тут накалякать для мало понимающих язык java. Буду считать, что всю байду, исходники, программы ты все накачал, если нет, тогда дальше не читай, а сначала всё это скачай. ИТАК! ТЫ ВСЕ СКАЧАЛ? ДА? Ну молодец. Итак, приступим, ты - читатель любишь иногда юзать архив *.jar (тоесть прогу, она типа в таком формате, а звездочка это название приложения, а точка - это......Ну,короче сам додумаешься) Там всякие файлы *.class (это наш преобразованный в будущем исходный код) И там всякие файлы прочие(мы их трогать не будем) и кстати, совсем забыл, там ещё папка "META-INF" , в котором находится файл "MANIFEST.MF", в котором записаны данные программы Примерно так MIDlet-1: Manifest, Manifest.png, Manifest MIDlet-Icon: Manifest MIDlet-Jar-Size: 1603 MIDlet-Jar-URL: Manifest.jar MIDlet-Name: Manifest MIDlet-Vendor: unknown MIDlet-Version: 1.0 MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-2.0 MIDlet-1 - для запуска мидлета нужно в этой строке задать строго по порядку название мидлета, графический файл то есть иконку(не обязательно), и собственно название класса с которого начнется запуск приложения. MIDlet-Icon - имя графического файла .png в jar-архиве, который будет исполь- зован системой для данного мидлета в меню запуска приложений; MIDlet-Jar-Size - размер jar-файла в байтах. Кривыми руками не лазить. MIDlet-Jar-URL - сетевой адрес и название jar-файла. В нашем случае это поле содержит лишь имя jar-файла; MIDlet-Name - имя мидлета (или комплекта мидлетов), которое будет показа- но пользователю в меню запуска приложения; MIDlet-Vendor - разработчик приложения; MIDLet-Version - версия мидлета в формате ..; может быть использована при установке и обновлении приложения; MicroEdition-Configuration - требуемая конфигурация J2ME для выполнения мидлета. В рамках нашей книги используется конфигурация CDLC-1.0; MicroEdition-ProfiLe - требуемый профайл J2ME для выполнения мидлета. Здесь мы рассматриваем работу с профайлом MIDP-1.0. Устал? Да? Нет? Это еще цветочки! Ты еще не перешел к программированию. Там вообще будет БОЛЬШАЯ офигенная.....Ну ты короче, понял. В архиве существует главный класс без которого никак нельзя. Как правило он называется названием приложения, или если ты хочешь не париться просто посмотри в манифест, там все есть. Ты все время слышал, что первая программа это "HelloWorld", (для незнающих это переводится как "ПРИВЕТ МИР"). На примере мы не будем разбираться. Сейчас теория пойдет. Открываем любой текстовый редактор, создаем новый текстовый файл и сразу нажимаем сохранить. Сохраняем так *.java (* - это название на английском. Точка - это точка. java - это наше начальное разрешение, после мы сможем это преобразовать в файл *.class с помощью компилятора(для тебя это новое слово)). Начинаем думать, что писать - ничего не знаем. Что делать? Даю совет - читай дальше. Значит, чтобы что-то здесь работало нужны библиотеки. Так сказать, что ты - создатель разрешаешь использовать в языке ту или иную функциию. Их нужно импортировать. Типа так, import * (* - это название библиотеки.) Их очень много. Теперь новое слово - MIDlet. По-русски также переводится - МИДлет. Это и есть наше приложение. Но еще его используют в главной библиотеке javax.microedition.midlet.MIDlet Теперь мы можем импортировать эту библиотеку. Сам додумаешься или подсказать? Ладно, пишу ответ. import javax.microedition.midlet.MIDlet; Ну че, заметил? После каждого импортирования библиотеки надо ставить знак - ";". Можешь уже переписать эту строку. Идем дальше. Нам не хватит одной главной библиотеки, нам еще нужны библиотеки для вывода данных на экране, в общем для всех действий, что связано с экраном. И вообще сам экран естественно. Это будет библиотека javax.microedition.lcdui.Display И чтобы работать с формой нам надо еще. (Текст в форме - это такая надпись в верхней части экрана) javax.microedition.lcdui.Form Теперь импортируй сам. Ну или чтобы не париться. Вот: import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Form; Сегодня 21.01.2010 . Ты импортировал библиотеки, теперь собственно настал момент создания класса. Нажми в текстовом редакторе сохранить свои библиотеки. Ты помнишь как назвал свой файл? Да? Молодец! Нет? Тогда посмотри. Вдобавок необходимо будет после создания класса произвести наследование от класса MIDlet. Например, ты трахнул девушку, у нее ребенок вскоре родился, а он Сука сильно похож на отца...хм..Вроде, ты понял. Теперь как это записать? public class you extends MIDlet Фраза "public class" создает класс. "you" - это название класса, главное, чтобы оно было одинаково с названием файла *.java , в нашем случае это будет - "you.java". Слово "extends" означает наследование, а "MIDlet" собственно от чего наследовать. Теперь можешь ту строку переписать, но когда ты создал класс, там ведь нужно будет внутри него писать разные строки. Их заключают в кривые, квадратноподобные(не пытайся это слово запомнить, просто нет в этом необходимости) скобки - "{ }" Вот полный пример public class you extends MIDlet { } Теперь, собственно, что писать внутри скобок?! Тут я иду на помощь, бородатый дядя. Необходимы старт, пауза, стоп - вот это новое слово - методы. Прошу запомнить, что эти три метода основные, без них никак нельзя. Их надо запомнить, вызубрить, вбить в тупую голову и так далее и тому подобное. Старт - это "startApp()" - круглые скобки должны быть обязательно. И снова, что мы пишем в этом методе должно быть в квадратоподобных скобках. Но как, как бы этот метод задействовать. Для этого есть слово "void", перед ним надо писать "public". Пауза - это "pauseApp()". Стоп - "destroyApp(boolean africa)" - появилось в стоп-методе слово "boolean" - это тип переменной(логический), а "africa"-это африка, Ну типа название переменной. Теперь все это перевари, попей чайку. И теперь попробуй реализовать все вышеописанное. Я жду твоего хода или ты ждешь ответа? Ну, ладно, я сегодня добрый: import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.Form; import javax.microedition.lcdui.Display; public class you extends MIDlet { public void startApp() {} public void pauseApp() {} public void destroyApp(boolean africa) { } } Я молодец! А ты тоже немного. Надеюсь, ты все это понял. Теперь собственно надо задействовать экран. Для этого надо сначала создать пару "надписей". Это будет Form f; (это форма для отображения текста) Display d; (это менеджер дисплея) Их нужно писать после создания класса в квадратоподобных скобках. То есть, чтобы в эти переменные записывались данные, касающиеся ихего применения Естесственно без ";" не обойтись. Для Display мы присвоили "d" , теперь мы можем получить ссылку на дисплей телефона, записав его в переменную. Для етого есть "*.getDisplay()". * - это слово "Display", далее команда запись,а в скобках надо указать на телефон дисплея, то есть "this". Все это уже будем писать в стартовом методе приложения. Вот: d = Display.getDIsplay(this); Теперь нам нужна форма + новое слово "new", то есть создание нового: f = new Form("YOU"); В круглых скобках, в ковычках пишем уже наш текст,например, в одно слово "you". Но как же наш основная часть дисплея? Спросишь ты. Вот ответ. Можно открыть форму и добавить туда текст, только в одну строку, не перенося на следующую строку. Вот: *.append("Text"); * - это наша ссылка на форму, то есть "f". Пишем все там же. Теперь всё это нужно вывести на экран. Для это есть *.setCurrent(**); * - ссылка на дисплей, то есть "d". ** - ссылка на форму, то есть "f". Мда...тут уже думаю, мозги у кого-нибудь поплыли. Нам еще нужен "обязательный метод прерывания" в стоп - То есть: notifyDestroyed(); Все. Теперь это надо усвоить. И полностью написать. Первую программу, выводящую данные на экран. Снова. Напишу весь текст программы: import javax.microedition.midlet.MIDlet; import javax.microedition.lcdui.Form; import javax.microedition.lcdui.Display; public class you extends MIDlet { Display d; Form f; public void startApp() { d = Display.getDisplay(this); f = new Form("YOU"); f.append("TEXT"); d.setCurrent(f); } public void pauseApp() { } public void destroyApp(boolean africa) { notifyDestroyed; } } Вот и все собственно теперь можешь скачивать себе Пирумяна, Горнакова, или Буткевича. Если ты даже не понял то, что я тут устал писать. Лучше удали всю информацию по языкам и вообще все это забудь и больше не трогай. Можете не ждать новых книг. Эта книга для полных нулей в программировании на j2me. С вами был Artej. Совет: скачай все три учебника. Вся эта информация находится на http://annimon.wen.ru Или http://annimon.z83.ru