Visual Studio: Как я показываю все классы, наследованные от базового класса?

Исключение нулевого указателя - это индикатор того, что вы используете объект, не инициализируя его.

Например, ниже - класс ученика, который будет использовать его в нашем коде.

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 ");
        }
    }
}
128
задан Dan Esparza 27 January 2015 в 13:44
поделиться

3 ответа

Несомненно, Resharper может сделать это. И намного больше.

щелчок правой кнопкой Just по имени типа в любом месте и выбирают "Go To Inheritor" в контекстном меню. "Перейдите К Наследнику", может быть также применен к методу для навигации к переопределениям и реализациям метода интерфейса. Для интерфейса Вы могли звонить, "Находят Использования Усовершенствованными" снова, просто щелкают правой кнопкой), где найти все распространение и реализации. Для типа - производные типы. И моя любимая функция - нажимает регулировкой частоты на любом типе/методе для навигации к его объявлению.

я думаю, что это - необходимый инструмент для разработчиков .NET.

<час>

В Resharper 9.2, на любом типе в исходном коде, rt-щелчок "Находит Использование Усовершенствованным", избранная Находка = "Полученный" и Объем = "Решения и Библиотеки".
, Например, для нахождения всех наследников (и в библиотеке и в коде) некоторого базового класса во включенном DLL от любого поставщика, объявляют переменную в коде с тем базовым классом. Затем щелкните правой кнопкой по тому имени базового класса, которое Вы просто ввели.

49
ответ дан 24 November 2019 в 00:35
поделиться

Для классов Платформы я использую MSDN Library. Раздел Inheritance Hierarchy входит в оба направления. По общему признанию не много справки для некоторых 3-х партийных библиотек, все же.

4
ответ дан 24 November 2019 в 00:35
поделиться

Вы также можете использовать Reflector .

Загрузите все сборки, в которых он должен искать, перейдите к типу и разверните элемент «Производные типы».

Вы также можете сделать это в обозревателе объектов, но по какой-то причине VS2008 может сделать это только в одном из представлений .Net Framework. (VS2010 Beta 2 может делать это в любом виде)

5
ответ дан 24 November 2019 в 00:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: