![]() |
Модераторы: javastic, AntonSaburov |
![]() ![]() ![]() |
|
bncom |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
День добрый!
Начал изучать Java недавно, а тут уже дали задание сделать программу на ME, реализующую принципы ООП. Сделал программу на Java SE (точнее, позаимствовал пример из книги Хорстманна, но сути не меняет, главное, что разобрался во всем):
Теперь нужно написать эту программу в ME. Есть стандартный шаблон (который Хеллоу Ворд выводит), но как отталкиваться дальше, я не знаю.
Буду благодарен, если поможете оформить программу в стандартах ME, чтобы уже дальше я мог тоже посмотреть, как это делается. Это сообщение отредактировал(а) bncom - 20.9.2009, 16:40 --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
||||
|
|||||
Galaran |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 91 Регистрация: 25.5.2009 Репутация: нет Всего: 2 |
Язык тот же. Только библиотека другая
Т.е. тут только System.out.print() и GregorianCalendar, Date заменить на ME аналоги |
|||
|
||||
bncom |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Мне бы поподробнее, на примере. С ME я вообще не знаком (хоть и это и один язык, однако все же немного тут по-другому).
--------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
|||
|
||||
W0LF |
|
|||
![]() alexander lonsky ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
wtk/apps
там есть куча примеров -------------------- iOS developer |
|||
|
||||
Dancer |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
bncom, ты же сам написал, что тебе дали задание, чтобы ты лучше разобрался, то есть самостоятельно, если я правильно понимаю
![]() Вот и разбирайся. Тебя тут уже все, кто как смог - направили. Дай и мне, мои 2 цента в копилку бросить ![]() 1) Поставивь WTK от SUN, и смотри javadocs которые там идут, по началу тебе нужно будет MIDP API. javax.microedition.* 2) Фишки, которые юзаются в 1.5/1.6 в ME не прокатят, так что "Employee : e" забываем ![]() for(int i = 0; i < staff.length; i++) {} // что-то вроде этого 3) Шаблон мидлета у тебя есть, там есть Display на который ты и выводишь свои элементы типа TextBox (TextBox t = new TextBox("Lab #1", "Hello, World!", 256, 0);) Значит, тебе нужно организовать код, который будет выводить что-то на экран мобилки, а не в кносоль, как ты делал в SE (System.out.prinln(....)) Ну и выводи ![]() Элементы могут быть StringItem, TextField, собственно писанные..... Form form = new Form("Title"); for(int i = 0; i < staff.length; i++) { form.append(new StringItem("Name: ", staff[i].getName() + " rub", Item.PLAIN); form.append(new StringItem("Name: ", staff[i].getSalary() + " rub", Item.PLAIN); } .... display.setCurrent(form); 4) Остальные классы у тебя есть, так что вперёд - дерзай! ![]() -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! ![]() |
|||
|
||||
bncom |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Ок, сейчас буду попробую реализовать.
--------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
|||
|
||||
bncom |
|
||||||||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Дерзанул, возникло пару вопросов.
Во-первых, я решил свои три класса разместить в трех файлах. Так, по-идеи, правильнее и понятнее выглядит. Во-вторых, почему-то при создании дочернего класса, наследующего свойства суперкласс, у меня вылезает Warning.
Warning: Exporting non-public type through public API В-третьих,
у меня лично вызывает ошибку, спасает только более тривиальный подход:
Однако почему-то строка StringItem hello = new StringItem... в куске кода:
Вызывает ошибку Cannot find symbol. Какой символ он найти не может, не пойму. В четвертых, помогите разобраться с классом GregorianCalendar. Ему, как я понимаю, соответсвует в МЕ класс Calendar. Прописал:
Получил:
В итоге ошибка следующего характера: Implement all abstract methods --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
||||||||||||
|
|||||||||||||
eugine_s |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 14.11.2007 Где: Киев Репутация: 17 Всего: 17 |
||||
|
||||
bncom |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Это еще что значит? Публичный класс не класс ))
class Manager extends Employee {} - так в книжке написано было.
С календарем поподробнее, пожалуйста, а еще лучше показать на моем примере, как реализовать его в ME. --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
||||
|
|||||
Dancer |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 537 Регистрация: 29.4.2005 Где: Nizhniy Novgorod Репутация: 33 Всего: 37 |
bncom, ну ты блин и лентяй!!!!
![]() Код компилиться, запускать - не запускал, не где. Код для MIDP 2.0, если нужно для 1.0, то там нету поддержки плавающей точки, то есть убрать придётся всякие double. Не забудь, что в твоём мидлете прописан package - hello, то есть, исходники у тебя так же должны быть в папке hello. Что-то вроде src/hello/*.java (HeloMIDlet.java, Employee.java, Manager.java) Вот твои классы: HelloMIDlet.java
Employee.java
Manager.java
Это сообщение отредактировал(а) Dancer - 21.9.2009, 18:35 -------------------- У программистов есть великая тайна: всё, что только можно, было давно кем-то когда-то написано. Разработчику только нужно знать в какое место кода какие строчки вставить! ![]() |
||||||
|
|||||||
bncom |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Dancer, спасибо, помог.
В принципе, у меня уже и так все было сделано, единственное, с классом календаря не разобрался.
Интересный подход, в книжке у меня такого вообще нет ![]() Почему-то в профиле MIDP-2.1 запускаться программа не захотелась у меня, поменял на MIDP-2.0 - все заработало. Сейчас буду пробывать прикрутить возможность ввода зарплаты, а потом их вывод с фамилиями. --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
|||
|
||||
susanin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 587 Регистрация: 7.10.2006 Где: Санкт-Петербург Репутация: нет Всего: 7 |
||||
|
||||
bncom |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
У меня наверно сейчас голова лопнет. Сижу уже какое время, пытаюсь реализовать переход с одного экрана на другой.
Экран #1: выводится TextField. Туда заносится процентная надбавка для зарплаты. Экран #2: отображается на Form список служащих с увеличенной зарплатой. Начал тут кумекать:
Вот дальше я не понимаю, где мне располагать "Создаем объект Manager", цикл для вывода инфы о зарплате? Если я оставлю его в private void init() - то это скорее всего будет неправильно, т.к. на экране отобазится: 1. кнопка ВЫХОД 2. кнопка ПЕРЕХОД (она же ОК) 3. Текст "Введите надбавку" 4. Список служащих с зарплатой А ведь надо список служищих в новом окне разместить, уже после ввода надбавки. Иду в обработчки событий:
Вот что надо в if (c == perexodMain) прописывать? --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
||||||
|
|||||||
W0LF |
|
|||
![]() alexander lonsky ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
модлет - такого нет, есть мидлет.
по хорошему, нужно создавать несколько классов, наследоваться от Form, в них прописывать какую-то логику, а потом делать переход между ними. чтоб сделать переход, нужно делать в классе, наследуемом от мидлета статический метод который будет устанавливать дисплей. и я уже писал, что в wtk/apps есть примеры, насколько я помню. Dancer не напишет Вам все Ваши лабораторные(хотя по себе в свое время помню что он оччень терпеливый =) ) и никто особо этим заниматься не будет... это время.. спишите лучше у однокурсников, переименовывая имена классов и интерфейс, если Вы не собираетесь заниматься в будущем этой профессией =) -------------------- iOS developer |
|||
|
||||
bncom |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 170 Регистрация: 2.11.2005 Репутация: нет Всего: 1 |
Да а я разве говорил, что надо писать за меня лабораторные?
Я понимаю, если бы пришел с пустыми руками, а попросил бы за меня написать. Вот это я понимаю был бы наглежь. А тут я просто прошу показать, КАК надо, т.к. в книжке про это хоть и на писано, но для меня лично не очень понятно. Ведь не зря же говорят, что один раз лучше показать, чем сто раз говорить... Очачатался я очачатался =) wtk у меня не стоит, а установлено java Platform ME SDK. APPS - это что такое? Это сообщение отредактировал(а) bncom - 22.9.2009, 16:56 --------------------
"Мы никогда не живем, мы лишь надеемся, что будем жить." Вольтер |
|||
|
||||
![]() ![]() ![]() |
FAQ раздела лежит здесь! |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |