WedX - журнал о программировании и компьютерных науках

IntelliJ IDE отключает проверку «никогда не используется»

Я расширяю MessageCracker класс и переопределяю методы (обработчики)

public void onMessage(ExecutionReport execRep, SessionID sessionID)
...
public void onMessage(BusinessMessageReject message, SessionID sessionID)
...
public void onMessage(Quote quote, SessionID sessionID)

сообщения перехвата каждого метода расширяют Message - ExecutionReport, BusinessMessageReject, Quote и т. д.

Все работает нормально, но IntellijIDE говорит об этом методе - Method 'onMessage(quickfix.fix44.Quote, quickfix.SessionID)' is never used

Как я могу это исправить?


  • Появляется ли никогда не используемое сообщение на интерфейсе/родителе или в подклассе? 18.08.2017
  • Если эти методы также каким-то образом аннотированы, вы можете подавить это предупреждение с помощью этой аннотации с помощью Alt+Enter и соответствующих дополнительных действий (см. ответ на stackoverflow.com/questions/5283972/ ) 30.04.2021

Ответы:


1

IntelliJ сообщает вам, что общедоступный метод вашего класса не используется. Это не ошибка, это просто информационное сообщение.

Вы можете думать об этом как о мягком намеке: написав общедоступный метод, вы подразумеваете, что что-то должно использовать этот метод, но IntelliJ не может найти какое-либо использование этого метода, поэтому он предупреждает вас на всякий случай: либо (а) область действия метода должна быть сокращен или (b) вы забыли написать код, предназначенный для вызова этого метода.

Вы можете включить или выключить это поведение из Preferences > Editor > Inspections > Unused Declaration

введите здесь описание изображения

Вы также можете отключить эту проверку для определенного метода, аннотировав этот метод с помощью @SuppressWarnings("unused").

18.08.2017
  • Есть методы, которые реально не используются и я хочу видеть информацию о них. Но эти методы явно не вызываются, а используются. Они получают сообщения. 18.08.2017
  • Согласно проверке неиспользуемых объявлений IntelliJ, эти методы не используются. Если вы не согласны с проверкой IntelliJ, вы можете отключить ее, см. Preferences > Editor > Inspections > Unused Declaration. Однако это только информационное сообщение, оно не указывает на ошибку, поэтому вы также можете просто его игнорировать. 18.08.2017
  • Я понимаю. Возможно, есть аннотация или способ пометить методы, которые работают как обработчик 18.08.2017
  • К этому методу можно добавить аннотацию @SuppressWarnings("unused"). 18.08.2017
  • или (c) они являются частью API, видимого извне для проектов в зависимости от вашей библиотеки. Опять же, если вы напишете для них тесты, предупреждения исчезнут. Проблема, с которой я сталкиваюсь, заключается в том, что каждый раз, когда я пытаюсь что-то зафиксировать, я получаю, что у вас есть 7 предупреждений в этом файле... вы уверены, что хотите зафиксировать? И может появиться действительное предупреждение, которое я не замечаю из-за предупреждений о неиспользуемом методе. 30.05.2021
  • Новые материалы

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..


    Для любых предложений по сайту: [email protected]