Другое событие NullPointerException
возникает, когда объявляется массив объектов, а затем сразу же пытается разыменовать его внутри.
String[] phrases = new String[10];
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Этот конкретный NPE можно избежать, если порядок сравнения отменяется ; а именно, использовать .equals
для гарантированного непустого объекта.
Все элементы внутри массива инициализируются их общим начальным значением ; для любого типа массива объектов, это означает, что все элементы null
.
Вы должны инициализировать элементы в массиве перед доступом или разыменованием их.
String[] phrases = new String[] {"The bird", "A bird", "My bird", "Bird"};
String keyPhrase = "Bird";
for(String phrase : phrases) {
System.out.println(phrase.equals(keyPhrase));
}
Основанный на 'лицензировании' тега Вы использовали для своего вопроса, Вы могли бы получить лучшие результаты MAC-адрес сети чтения. Идентификация ПК MAC-адресом не является полностью небьющимся методом для защиты от копирования, тем не менее это иногда используется.
Я предполагаю довольно многих, компилятор действительно предлагает некоторую обертку и т.п. вокруг упомянутой команды. Вот пример
#include <stdlib.h>
#include <string.h>
#include <intrinsics.h>
_CPUID cpuinfo;
int main(void) {
_cpuid(&cpuinfo);
printf("Vendor: %s\n", cpuinfo.Vendor);
return 0;
}
Вывод:
Vendor: GenuineIntel
В окнах я уверен, что существует системный вызов, В Linux можно было попробовать "sudo lshw", но большинство ядер, кажется, не поддерживает порядковые номера ЦП, и предварительное исследование, кажется, указывает, что общее негодование против исключительно идентифицируемых компьютеров означает, что нет никакого идеального ответа.
, Что Вы пытаетесь сделать? Почти наверняка кто-то сделал это прежде, и это может быть мудро к повторному использованию или эмулировать то, что они сделали.
Еще некоторые детали: операционная система, язык.
, Например, в Windows можно получить его при помощи WMI и чтения Win32_Processor. ProcessorId.
Даже с включенным CPUID там на самом деле порядковый номер, доступный в современных процессорах? Я не забываю там быть большим протестом в Pentium 3 дня, когда этот целый вопрос порядкового номера был поднят.
Используйте инструмент CPUZ: http://www.cpuid.com/cpuz.php
Помните, что большинство компьютеров в эти дни поставлется с идентификатором ЦП, отключенным в BIOS. См. CPUID на Википедию
У меня есть окончательный ответ для этого без внешних библиотек. Просто введите это:
WMIC BIOS Получить сериал
Это даст вам серийный номер на шасси PCS;) (найдено в базе знаний Microsoft)
С уважением!