Как Вы генерируете хороший идентификатор в документах ATOM?

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, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)

22
задан Dan Lowe 6 May 2017 в 14:35
поделиться

2 ответа

Статья Mark Pilgrim, Как сделать хороший идентификатор в Atom , хороша. Вот часть его:

, Почему Вы shouldn’t используете свою постоянную ссылку в качестве идентификатора

Atom It’s, допустимый для использования URL постоянной ссылки в качестве < идентификатор>, но я препятствую ему, потому что это может создать беспорядок, о котором элемент нужно рассматривать как постоянную ссылку. Разработчики, которые don’t читают спецификации, посмотрят на Вашу Atom-ленту, и они видят два идентичных сведения, и они выбирают один и используют ее в качестве постоянной ссылки, и некоторые из них выберут неправильно. Тогда они переходят к другому каналу, где эти два элемента не идентичны, и они запутываются.

В Atom, < рэл ссылки = "альтернатива"> всегда является постоянной ссылкой записи. < идентификатор> всегда является уникальным идентификатором для записи. Оба требуются, но они служат различным целям. Идентификатор записи никогда не должен изменяться, даже если постоянная ссылка изменяется.

“Permalink changes”? Да, постоянные ссылки не являются столь постоянными, как Вы могли бы думать. Here’s пример, который произошел со мной. Мои URL постоянной ссылки были автоматически сгенерированы из заголовка моей записи, но тогда я обновил запись и изменил заголовок. Угадайте то, что, “permanent” связывают просто измененный! Если you’re умный, можно использовать перенаправление HTTP для перенаправления посетителей от старой постоянной ссылки до новой (и я сделал). Но Вы can’t перенаправляете идентификатор.

идентификатор записи Atom никогда не должен изменяться! Идеально, необходимо генерировать идентификатор записи однажды и сохранить его где-нибудь. Если you’re, автоматически генерирующий его раз за разом от данных, которые изменяются со временем, то entry’s идентификатор изменится, который побеждает цель.

29
ответ дан cjm 29 November 2019 в 05:16
поделиться

Используйте GUID для идентификатора.

зависит, какой язык Вы используете, но Вы могли использовать

Система. Гуид для.NET.

2
ответ дан SpoiledTechie.com 29 November 2019 в 05:16
поделиться