Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.
Например, ниже - класс ученика, который будет использовать его в нашем коде.
public class Student {
private int id;
public int getId() {
return this.id;
}
public setId(int newId) {
this.id = newId;
}
}
Приведенный ниже код дает вам исключение с нулевым указателем.
public class School {
Student obj_Student;
public School() {
try {
obj_Student.getId();
}
catch(Exception e) {
System.out.println("Null Pointer ");
}
}
}
Поскольку вы используете Obj_Student
, но вы забыли инициализировать его, как в правильном коде, показанном ниже:
public class School {
Student obj_Student;
public School() {
try {
obj_Student = new Student();
obj_Student.setId(12);
obj_Student.getId();
}
catch(Exception e) {
System.out.println("Null Pointer ");
}
}
}
CodeXL теперь заменил Конец Аналитика Кода Line'd AMD , и оба свободны, но не так усовершенствованы как VTune. Существует также Сонные , который очень прост, но делает задание во многих случаях.
Microsoft имеет Windows Performance Toolkit .
Это действительно требует Windows Vista, Windows Server 2008 или Windows 7.
Я использую AQTime, это - один из лучших профильных инструментов, которые я когда-либо использовал. Это не свободно, но можно получить 30-дневную пробную версию, поэтому если бы Вы планируете оптимизацию и профилирование только одного проекта, и 30 дней достаточно для Вас тогда, я рекомендовал бы использовать это приложение. ( http://www.automatedqa.com/downloads/aqtime/index.asp )
Я использовал "TrueTime - часть комплекта DevPartner Compuware в течение многих лет. Существует [бесплатная версия] (Вы могли попробовать Аналитический Выпуск Сообщества Работы Compuware DevPartner.) доступный.
Я использую VSPerfMon, который является профилировщиком StandAlone Visual Studio. Я записал инструмент GUI, чтобы помочь мне выполнить его и посмотреть на результаты.
Proffy довольно крутой: http://pauldoo.com/proffy/
Отказ от ответственности: это я написал.
Very Sleepy - это профилировщик процессора C/C++ для систем Windows (бесплатно).
CppCheck - статический профилировщик процессора Си/Си++ для систем Windows (бесплатно).