只是要知道。订购import语句的正确方法是什么?还有哪些可读性?
等
java.util.List
),然后是内部课程
类。 提前致谢。
答案 0 :(得分:11)
最常用,在大多数IDE中使用的是字母顺序,从域级别和完全限定的类名开始。
java.*
和javax.*
优先,其余的都是有序的。
示例:
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import org.apache.http.conn.ClientConnectionManager;
import org.apache.http.conn.scheme.Scheme;
import org.apache.http.conn.scheme.SchemeRegistry;
import org.apache.http.conn.ssl.SSLSocketFactory;
import org.apache.http.impl.client.DefaultHttpClient;
import com.neurologic.http.HttpClient;
import com.neurologic.http.impl.ApacheHttpClient;
答案 1 :(得分:11)
来自Java Programming Style Guidelines
import语句必须遵循package语句。进口 语句应该首先使用最基本的包进行排序, 并与相关的包组合在一起,一个空行 小组之间。
..... .....
导入语句位置由Java强制执行 语言。排序使得在那里浏览列表变得简单 是很多进口,它可以很容易地确定依赖性 当前包的分组通过折叠降低了复杂性 相关信息成为一个共同的单位。
请参阅Java Tutorial链接以获取更多信息。
答案 2 :(得分:5)
我不确定是否有标准。但像android这样的一些项目使用以下规则。
每组由一条额外的线分开。每个组都按字母顺序排列。
AFAIK这些都是基于我们的偏好。
答案 3 :(得分:4)
我只使用我的IDE(Eclipse)实现的默认顺序......并定期运行“Tidy Imports”,以保持房屋秩序。
如果您自动执行此操作,可读性不是一个重要问题。无论是什么,您都会很快习惯任何自动订购。此外,人们往往不会读取进口。
答案 4 :(得分:3)
我更喜欢按字母顺序排列 - 这是最具可读性的,不是它......
答案 5 :(得分:1)
正如其他人所提到的,如果您使用的是像Eclipse或IntelliJ这样的IDE,可读性并不是太令人担忧,因为您开始相信组织是自动化且完美的。
如果您有多个具有相同名称的类可能通过.*
表示法导入,那么顺序确实重要的一个区域就是定义优先级。
例如,假设您有java.util.List
和org.northpole.christmas.List
可用,并且您指定了导入java.util.*
和org.northpole.christmas.*
那么在这种情况下,java.util.*
是有意义的高于org.northpole.christmas.*
,因为如果我真的没有那么多关注而后来我正在阅读代码,我会认为List
是java.util.List
而不是其他东西。这就是为什么,我相信,Eclipse首先是java
和javax
,然后是org.apache
,然后是其他人。这些天我也在com.google
的上方或下方org.apache
。
答案 6 :(得分:0)
我更喜欢这个:
1)第一组基于外部和内部API导入 2)按字母顺序在每个组内
答案 7 :(得分:0)
大多数IDE很好地完成了这项工作。只需右键单击并说出“组织进口”。