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, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)
не Заставляют Меня Думать , тот!
Также выезд веб-сайт Steve Krug для подсказок и образца формируется для тестирования удобства пользования.
дизайн повседневных вещей ? "Старый" классик, но полезный, если Вы планируете что-нибудь, что требует человеческого взаимодействия.
Tufte, визуальное представление количественных данных http://www.edwardtufte.com/tufte/
Don Norman, дизайн повседневных вещей http://www.jnd.org/
Joel Spolsky Дизайн Пользовательского интерфейса для Программистов , по крайней мере, интересен, и рекомендуемое чтение.
Хотя абсолютно независимый от сети и программирования, Дизайн Повседневных Вещей Donald Norman учил меня много!
Для менее всестороннего, больше подхода поваренной книги (если Вы не хотите думать), судите Robin Williams Книга Дизайна Неразработчика: Дизайн и Типографские Принципы для Визуального Новичка .
Presonally я очень предпочитаю Дизайн Повседневных Вещей.
Инструкции по Интерфейсу пользователя Apple являются большими!
Это непосредственно не связано с дизайном GUI или программированием, но Психология Повседневных Вещей является хорошей книгой для чтения.
Это - общий взгляд на то, как разработаны вещи и как они перестали работать. Понятия в этой книге, хотя не непосредственно применимый к GUI, действительно применяются. На самом деле Вы могли сказать, что они относятся ко всем экземплярам ориентированного на пользователя дизайна.
http://www.amazon.com/Psychology-Everyday-Things-Donald-Norman/dp/0465067093
Спрошенный недавно относительно другого вопроса. https://stackoverflow.com/questions/158769/best-books-to-learn-about-design
Хороший список там.
Поворот 3.0 Основами Дизайна Взаимодействия была бы хорошая Идея читать
"Не Заставляйте Меня Думать", является большим. После нахождения в на нескольких исследованиях удобства использования я могу безопасно сказать, что несколько из его самых больших точек являются видами вещей, которые развертывают в Вашей голове много раз.
книга Joel Spolsky по пользовательским интерфейсам также достойна.
http://www.amazon.com/User-Interface-Design-Programmers-Spolsky/dp/1893115941
Помимо замечательных советов, приведенных на данный момент, см. Также Рекомендации по взаимодействию с пользователем в Windows , как описано в этой интересной записи блога Кирилла Осенкова. .