Неиспользованный импорт и объекты влияют на производительность
У меня есть сомнение, не влияют ли неиспользуемые импорты и неиспользуемые объекты в код Java?
Предположим, что объект инициализирован и никогда не используется, что происходит?
И какова стоимость неиспользуемого импорта.
Ответы
Ответ 1
Это очень распространенный вопрос.
Как и большинство вопросов производительности, наилучшим подходом является написание самого чистого и простейшего кода, поскольку это улучшает ремонтопригодность кода и помогает обеспечить его хорошую работоспособность даже после его изменения. (Умный/Obtuse/Needlessly Подробный код может быстро запускаться, но, поскольку он изменяется простым смертным, он может стать намного медленнее)
Неиспользуемый импорт оказывает незначительное влияние на компилятор, но импорт не импортируется в байтовый код или во время выполнения.
Неиспользуемые объекты можно оптимизировать, но лучше всего их избегать, поскольку они почти всегда вызывают некоторое влияние на производительность, но, что более важно, затрудняют чтение и поддержание вашего кода.
Ответ 2
Неиспользованный импорт не влияет на производительность во время выполнения. Это чисто механизм пространства имен. Тем не менее, вы всегда должны импортировать только то, что вам нужно для удобства чтения, и избегать конфликтов пространства имен, которые являются неприятностью.
Помимо читаемости кода и, следовательно, ремонтопригодности кода, может быть более быстрая компиляция java-кода (однако, незаметная) путем упорядочивания импорта, но производительность выполнения не влияет, поскольку на байт-код не влияет неторопливый импорт. Созданный байт-код остается тем же.
Ответ 3
В то время как влияние на компиляцию минимально, влияние на развертывание может быть плохим, я только что наткнулся на неиспользуемый импорт, который требовал, чтобы отдельная библиотека стала зависимой от maven, еще одна проблема транзитивной зависимости не была найдена, но война было толще без каких-либо причин, добавьте к этому лишнюю банку в загрузчике классов webapp.