Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.
Например, ниже - класс ученика, который будет использовать его в нашем коде.
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 ");
}
}
}
Несомненно, Resharper может сделать это. И намного больше.
щелчок правой кнопкой Just по имени типа в любом месте и выбирают "Go To Inheritor" в контекстном меню. "Перейдите К Наследнику", может быть также применен к методу для навигации к переопределениям и реализациям метода интерфейса. Для интерфейса Вы могли звонить, "Находят Использования Усовершенствованными" снова, просто щелкают правой кнопкой), где найти все распространение и реализации. Для типа - производные типы. И моя любимая функция - нажимает регулировкой частоты на любом типе/методе для навигации к его объявлению.
я думаю, что это - необходимый инструмент для разработчиков .NET.
<час> В Resharper 9.2, на любом типе в исходном коде, rt-щелчок "Находит Использование Усовершенствованным", избранная Находка = "Полученный" и Объем = "Решения и Библиотеки".
, Например, для нахождения всех наследников (и в библиотеке и в коде) некоторого базового класса во включенном DLL от любого поставщика, объявляют переменную в коде с тем базовым классом. Затем щелкните правой кнопкой по тому имени базового класса, которое Вы просто ввели.
Для классов Платформы я использую MSDN Library. Раздел Inheritance Hierarchy входит в оба направления. По общему признанию не много справки для некоторых 3-х партийных библиотек, все же.
Вы также можете использовать Reflector .
Загрузите все сборки, в которых он должен искать, перейдите к типу и разверните элемент «Производные типы».
Вы также можете сделать это в обозревателе объектов, но по какой-то причине VS2008 может сделать это только в одном из представлений .Net Framework. (VS2010 Beta 2 может делать это в любом виде)