Перемещение в Android от [закрытого] J2ME

NullPointerException s - исключения, возникающие при попытке использовать ссылку, которая указывает на отсутствие местоположения в памяти (null), как если бы она ссылалась на объект. Вызов метода по нулевой ссылке или попытка получить доступ к полю нулевой ссылки вызовет функцию NullPointerException. Они наиболее распространены, но другие способы перечислены на странице NullPointerException javadoc.

Вероятно, самый быстрый пример кода, который я мог бы придумать для иллюстрации NullPointerException, be:

public class Example {

    public static void main(String[] args) {
        Object obj = null;
        obj.hashCode();
    }

}

В первой строке внутри main я явно устанавливаю ссылку Object obj равной null. Это означает, что у меня есть ссылка, но она не указывает на какой-либо объект. После этого я пытаюсь обработать ссылку так, как если бы она указывала на объект, вызывая метод на нем. Это приводит к NullPointerException, потому что нет кода для выполнения в местоположении, на которое указывает ссылка.

(Это техничность, но я думаю, что она упоминает: ссылка, которая указывает на null, равна 't то же, что и указатель C, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)

29
задан sunil 3 August 2012 в 12:20
поделиться

4 ответа

На самом деле API Android намного более мощен, чем J2ME.

намного легче создать приложение для Android.

Используя J2ME Вы ограничены простыми формами из-за отсутствующих из подобных колебанию библиотек (хотя теперь там существует библиотека под названием LWUIT, избегая потребности воссоздать с нуля подобную колебанию библиотеку).

В Android Вы будете в состоянии создать сложную форму очень быстро, и пакет программного обеспечения для android SDK легко установить (в то время как в J2ME необходимо установить беспроводной инструментарий разработки от солнца или установить одну из Nokia, Samsung или Sonyericsson..., это становится немного сбивающим с толку иногда).

вещи я должен был измениться, когда переключение от j2me до андроида было:

1/шрифт и графический класс легче использовать на j2me. API более полон на Android, но также и более сложен.

2/, Если Вы привыкли к устройству хранения данных базы данных j2me (RecordStore), хорошо можно забыть его в Android. Необходимо будет использовать подобный SQL databased, так готовы заново продумать модель данных.

20
ответ дан jsight 28 November 2019 в 01:52
поделиться

Я также нашел путь от Java ME к Android, чтобы быть довольно простым. Вот несколько вещей, которые я заметил:

  1. существует ОДИН ui, тянут поток в Android. Необходимо знать о различии между вызовом postInvalidate и invalidate на Представлениях, чтобы вынудить их обновить.

  2. фактическое поразрядное графическое управление очень похоже. Я смог портировать большой объем пользовательского J2ME, рисуют код путем записи нескольких контейнеров для drawRect и drawImage.

  3. библиотека UI Android намного более обширна, а тем более бесполезна, и намного более сложна, чем Java ME

  4. Threadwise, необходимо быть намного более осторожны относительно потока saftey с Android. В Java ME можно сойти с рук не создание синхронных методов или переменные, энергозависимые большую часть времени. Не так в Android.

я скажу, в целом, что библиотека UI Android проваливает критический тест. Я называю это "списком мой собственный" тест.

библиотека Your UI проваливает этот тест, если она берет меня дольше для завершения, подробная задача задачи (скажите, изменив фон на одном отдельном пункте меню), чем она взяла бы меня два, пишут мой собственный Меню с нуля. Android проваливает тест "самокрутки" фактором 3 или 4. На самом деле, если Вы смотрите, большинство вопросов на этом веб-сайте, "Как я заставляю инструментарий UI Android выполнить мои указания?" вопросы.

Android является удивительной платформой, и это стоило каждого расстраивающего момента, который я снизил в него. Это - однако, молодая платформа, и нуждается в некоторой серьезной работе во времена для прибытия.

12
ответ дан Iamat8 28 November 2019 в 01:52
поделиться

Хорошее начало должно было бы посмотреть ролики архитектуры Android и посмотреть на часть документации.

http://www.youtube.com/view_play_list?p=586D322B5E2764CF http://code.google.com/android/what-is-android.html

Google очень хорош о документировании. Из того, что я услышал Android, очень очень похожий на J2ME в его целях. Это может немного отличаться в стиле программирования и структуре, но если у Вас есть опыт J2ME, необходимо быть больше тогда готовы идти дальше к Android.

Удачи!!!

7
ответ дан peregrine 28 November 2019 в 01:52
поделиться

Ну, Вы, возможно, на самом деле не должны адаптироваться.

существует хороший шанс, что стек J2ME станет доступным для Android в ближайшее время, так как Android, как предполагается, не становится столь же строгим из стороннего времени выполнения как iPhone.

я знаю одного парня, который продолжал работать просто что: http://justanapplication.wordpress.com/

Теперь, конечно, который не означает, Вы не должны взглянуть на API Android и жизненный цикл приложения.

0
ответ дан michael aubert 28 November 2019 в 01:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: