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, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)
Это - трудный вопрос. Моя теория о Emacs состоит в том, что необходимо дать его реальный честная попытка. Это означает работать с ним в течение нескольких месяцев, не дней. Это не для слабонервных! Идеально emacs стал бы Вашим и только текстовым редактором, и Вы делаете вещи emacs путь.
Действительно, чтобы дать себе и emacs возможную лучшую возможность, необходимо изучить достаточно elisp, чтобы сделать собственные основные настройки.
На самом деле, я думаю, что Ваш .emacs является, вероятно, сельдью чтения относительно предоставления emacs самый лучший шанс. Вместо этого испытайте некоторые более отличные функции как flymake с pylint, нижним процессом Python, отладка Python с emacs все стоят. В особенности нижние процессы являются бомбой.
EmacsWiki имеет некоторую хорошую информацию о Python и emacs.
Я предложил бы запустить с пробела .emacs файл. Тогда пройдите учебные руководства и связанные сообщения в блоге, и вырастите его, как Вы узнаете. Используя .emacs файл это одолжено от кого-то еще, немного походит на упущение сути.
Самое важное изменение конфигурации, которое я нашел, не один для Вашего .emacs, но для Вашей ОС. В "Клавиатуре & Мышь" установки системы, на вкладке "Keyboard", нажимает "Modifier Keys..." на нижнюю часть и затем изменяет "Caps Lock" для поведения как "Управление". Тогда обучите себя использовать клавишу Caps Lock (налево от) вместо клавиши CTRL вниз в углу. Это сделает целый опыт и намного более продуктивным и намного более удобным.
Для прибавления к немногим другим по комментариям я в настоящее время работаю с продолжающим набором модифицирующей клавиши:
Caps-lock = Control
Control = Option
Option = Inactive
Command = Command
Под Emacs (btw, Вы упомянули Aquamacs, идут с Emacs.app вместо этого), я тогда определяю через предпочтения для имения Опции = Команда и Команда = Опция. Это помещает два наиболее используемых ключа (C и M) рядом с домашней строкой и рядом с клавишей "Пробел", которую я нашел, чтобы быть очень удобным для использования.
Для движения с Emacs.app просто используйте MacPorts для установки его
sudo port install emacs-app
кроме того, я собираюсь поместить свою поддержку там со всеми остальными; необходимо попробовать это за длительный период времени, или Вы не будете придерживаться его. Пройдите учебное руководство многократно (C-h t), просмотрите Информационное руководство (C-h r), если Вы не знаете, как использовать Информацию, пройти Информационное руководство (C-h i h) (это - действительно невероятная система документации), и для приблизительно 30 из лучших подсказок я когда-либо слышал записанный действительно кратким способом, навестите Yegge, старого эффективное сообщение Emacs . Вне всего этого действительно выключите все остальное и просто пойдите для него. Когда Вы наталкиваетесь на что-то, что Вы не знаете, как сделать, воспользоваться возможностью для исследования его, повторите его несколько раз, и затем идите дальше. Вы замедлитесь много сначала, но впоследствии Вы будете очень более эффективны при редактировании любого вида текста там.
Я создал модульную конфигурацию emacs для меня. Не стесняйтесь смотреть здесь .
Можно обратиться к моим конфигурациям emacs, расположенным на мой сайт . Aquamacs-определенная конфигурация можно найти в отдельный файл