Как будто вы пытаетесь получить доступ к объекту, который является null
. Рассмотрим ниже пример:
TypeA objA;
. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException
, что имеет смысл.
См. Также этот пример:
String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
Жандарм обнаружит закрытые методы без восходящих вызывающих сторон. Это доступно кросс-платформенный, и дескрипторы последней версии" AvoidUncalledPrivateCodeRule".
FxCop обнаружит общественность/защищенные методы без восходящих вызывающих сторон. Однако FxCop не обнаруживает все методы без восходящих вызывающих сторон, поскольку он предназначен для регистрации в случае, что код является частью Библиотеки, таким образом, общедоступные участники не учтены. можно использовать NDepend, чтобы сделать поиск общедоступных участников без восходящих вызывающих сторон, которые я детализирую здесь в этом другом ответе StackOverflow .
(редактирование: добавленная информация о Жандарме, который на самом деле делает то, что корреспондент спросил)
NDepend также сообщит относительно потенциально неиспользованного кода.
Примите во внимание, что Resharper (и вероятно другие подобные инструменты также) не выделит неиспользованные методы, если методы будут отмечены public
. Нет никакого способа, которым статический инструмент анализа кода сможет проверить, используются ли методы Вашего блока другими блоками вне Вашего решения. Таким образом, первый шаг в избавлении от неиспользованных методов должен уменьшить их видимость до private
или internal
.
Да, эти MZ-инструменты дополнение имеет функцию мертвого кода обзора.
Resharper делает это, и не только с методами. Это также делает это с использованием операторов, переменные и так далее.
Ну, если VS не делает этого исходно, простой метод состоит в том, чтобы щелкнуть правой кнопкой по методу, и выбор "находят все ссылки". Если существует только 1 ссылка (где она объявляется), она, скорее всего, не используется больше нигде.