Предыдущий пост Поделиться Следующий пост
Краткое разъяснение тезиса «атеизм — не религия» для программистов
lex_kravetski
		Atheism atheism = Atheism.getInstance();
		String godName = atheism.getReligiousProperties().getGodName();
		System.out.println( godName );


Exception in thread "main" java.lang.NullPointerException


P.S. Непрограммистам всё это пофиг, однако по-видимому необходимо дать разъяснение для идиотов, по нелепой случайности считающих себя программистами.

Предположим, что ни одна функция внутри себя не может выбросить NullPointerException (NPE). Проанализируем код.

В первой строке имеем вызов статического метода. По соглашению тут не может возникнуть NPE.
Во второй строке мест для возникновения NPE два.
В третьей строке, чего бы там ни нафантазировали себе идиоты, NPE возникнуть не может.

То есть, мест возможного возникновения NPE тут два. А не ноль, как почему-то считают идиоты, ошибочно называющие себя программистами.

Мы знаем, что атеизм таки существует, поэтому NPE не может возникнуть при вызове getReligionProperties у ссылки atheism. Отсюда следует, что единственным местом возникновения NPE является вызов getGodName у того, что было возвращено из getReligiousProperties. То есть, как легко догадаться, у null.

Итого: место возникновения в данном коде NPE и причины возникновения этого NPE должны быть очевидны любому java-программисту даже с минимальным опытом работы. Но идиотам, как выяснилось, они не очевидны даже после прозрачных намёков. Выражаю свои соболезнования.

позанудствую

godsName не объявлена, видимо "s" лишняя. а то многобожие какое-то получается..

Re: позанудствую

Не, это в реале пишется как god's name - обозначение родительного падежа. :)

(Удалённый комментарий)
Присутствуют все сведения для однозначного в их рамках ответа.

программисты шутят

TheGod theGod = TheGod.TheGod(atheism.getReligiousProperties().getGodName());

Exception: object variable theGod out of range

Мммм... Первую строчку лучше поменять на следующую:

Religion atheism = Atheism.getInstance();

(Удалённый комментарий)
Ну раз уж мы его к религии пытаемся отнести — есть наверно.

Однако, то же самое получится и в случае с буддизмом.

Конечно, нет: не будет NullPointerException.

Но, чтобы понять про что тут, надо быть хорошим программистом.

собственно NPE может возникнуть, только если getReligiousProperties возвращает null, а за такое проектирование надо руки отрывать, не важно от мировоззрения автора.

Re: Ответ на вашу запись...

Именно так. При тезисе «атеизм — религия», мы имеем грубую ошибку проектирования.

(Удалённый комментарий)

для математиков

QUOT
Формальная логика возможна, когда в качестве замещаемого содержания выступают не непосредственно объекты действия, а, в свою очередь, знаки, образующие замкнутые оперативные системы. Метод формальной логики последовательно проводит принцип параллелизма формы и содержания мышления.

Развитие символизации в формальной логике и её превращение в одну из математических дисциплин закономерны, естественны и неизбежны.

Претензии формальной логики на роль теории мышления несостоятельны, поскольку:

её понятия описывают не мышление в целом, а лишь его знаковую форму, и то неполно;
в её понятиях не учитывается зависимость строения и правил преобразования этой формы от содержания;
её понятия не отражают различия между мышлением и его продуктами (знаниями);
её понятия не могут объяснить образование сложных знаний;
её метод несовместим с историческим подходом к исследованию мышления
UNQUOT

Re: для математиков

Дорогой друг. Тебе сюда больше приходить не надо.

Процитирую луркморчик:
Докинз не любит слова «атеист». Его позиция: мы же не называем тех, кто не употребляет вещества или не торчит на другой зависимости специальным словом. Слово «атеист» — способ ебаной дискриминации годных, вменяемых людей.

Re: Ответ на вашу запись...

Надо уже давно было в обиход ввести:

Имя: Лекс
Фамилия: Кравецкий
Вероисповедание: null
Пол: мужской
Партийная принадлежность: null

Удобно было бы. Прочерк читается плохо. Причём, что глазами читается, что в смысле «произносится».

(Удалённый комментарий)

Re: не совсем верно

Программировать, дорогой программист, ты по-видимому не умеешь. По крайней мере на Яве.

...
class Авраам;
class Исаак : public Авраам { ... };
class Иаков : public Исаак { ... };
class Иуда : public Иаков { ... };
...
Ну и так далее.

Неправда ваша. Исаак не являлся Авраамом.

если атеизм не религия, с чего тогда у Atheism наличествует метод getReligiousProperties()?

Re: Ответ на вашу запись...

Исходная предпосылка, от которой всё это отталкивается: атеизм — религия. Поэтому тут наглядно продемонстрировано, что в этом случае будет.

А так, мало ли. Мы, быть может, хотим анкету какую заполнять.

Ну да. Exception выскочил на _третьей_ строке, но не на второй. Так что у него с религией как минимум общий базовый класс.

Re: Ответ на вашу запись...

Яву ты не знаешь.

...но люди, не знакомые с тем, откуда какая ошибка вылезает, не поймут-с...

?

Log in

No account? Create an account