Что лучше: импортировать по одному или .*?JAVA

Программисты JAVA общаются здесь
Anonymous
Что лучше: импортировать по одному или .*?

Сообщение Anonymous »

Я занят небольшой Java-программой для школьного проекта, и мой список импорта становился все длиннее и длиннее. Это заставило меня задуматься, не лучше ли импортировать все сразу:

Код: Выделить всё

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
Или импортировать необходимые классы по одному:

Код: Выделить всё

import javax.swing.DefaultListModel;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JPanel;

import java.awt.event.ComponentListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentEvent;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.Point;
Я могу себе представить, что в действительно больших проектах список импорта может стать очень длинным. Итак, есть ли какие-либо соображения по поводу производительности?

Ответ найден здесь, ссылка предоставлена ​​Го Сун:


Директива import — это директива компилятора. Она сообщает компилятору, где искать класс, и позволяет не всегда использовать полные имена классов, например java.util.HashMap. Но сами директивы импорта не помещаются в скомпилированные файлы байт-кода, компилятор компилирует полное имя в файл .class.

При использовании без подстановочного знака Директива явно указывает компилятору искать один конкретный файл в пути к классам. При использовании подстановочного знака директива сообщает компилятору искать именованный пакет и искать в этом пакете возможные совпадения каждый раз, когда необходимо сопоставить какое-либо имя. Последняя версия, вероятно, займет (немного) больше времени для компилятора, чем первая.

Другими словами, директива импорта не может каким-либо образом повлиять на выполнение кода во время выполнения. . Однако директива импорта влияет на время компиляции. Кроме того, я обнаружил, что использование импорта с подстановочными знаками делает код менее читаемым.

На самом деле, вопрос месяца о стоимости операторов импорта на сайте java Performancetuning.com прекрасно отражает это в своем вывод:


Использование оператора импорта не требует затрат времени выполнения.
Процесс компиляции при импорте может занять немного больше времени.
Процесс компиляции может занять еще больше времени с оператором импорта с подстановочными знаками
Для улучшения читаемости операторы импорта с подстановочными знаками являются плохой практикой для чего-либо, кроме >>одноразовых классов
Накладные расходы на компиляцию без подстановочных знаков операторы импорта невелики, но они обеспечивают удобство чтения, поэтому рекомендуется использовать их



Подробнее здесь: https://stackoverflow.com/questions/252 ... -by-one-or

Вернуться в «JAVA»