Обратите внимание, что этот вопрос касается не изменения порядка импорта в Eclipse, а скорее того, почему настройки по умолчанию такие, какие они есть. Взгляните на следующий пример из Eclipse.
import java.io.File; // alphabetic
import java.io.IOException;
import java.io.StringReader;
import java.util.Map; // class before subpackage
import java.util.concurrent.ConcurrentHashMap;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.apache.commons.math3.util.MathUtils;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
Как видите, импорт сгруппирован по первому уровню пакета или домену верхнего уровня. Внутри группы импорт сортируется в алфавитном порядке, а классы располагаются над подпакетами. Однако группы между собой не отсортированы по алфавиту. Для меня понятно, что пакеты java
и javax
выше всех остальных пакетов, но почему org
перед com
? Есть ли для этого веская причина? Настройки для этого поведения можно найти в разделе Window -> Preferences -> Java -> Code Style -> Organize Imports
(см. рисунок ниже), и этот вопрос уже обсуждался в комментариях этот отвечать.
Обратите внимание, что я не прошу мнения или предположения об этом решении. Если есть известная причина, включите ссылку (например, официальное руководство по стилю кода Java или документацию).
java
) › Java EE (javax
) › библиотеки, не зависящие от поставщика (org
) › библиотеки, зависящие от поставщика (com
). - person howlger   schedule 15.08.2020