Java中 wildcard 导入是否合理?
- 内容介绍
- 文章标签
- 相关推荐
本文共计652个文字,预计阅读时间需要3分钟。
这个问题应该所有使用过Java第一课的人都应该知道,不要使用通配符导入。主要问题是你的本地命名空间变得混乱。最简单的说法就是,使用Date这个对象。
这个问题应该是所有使用过 Java 第一课的人都会告诉你不要使用通配符导入。
主要问题
主要的问题是它使你的本地命名空间变得混乱。
用最简单的说法就是 Date 这个对象,你可能在 java.sql.Date 和 java.util.Date 都会有这个对象。
如果你使用通配符导入的话,就完全不知道用哪个对象了。
通配符导入真的有那么讨厌吗
从代码执行效率来说,使用通配符导入没有任何区别。
例如:
java.io.*和java.io.File都会编译成相同的二进制代码。
所以在运行时,是否使用通配符导入完全没有区别。
IDEA 默认使用通配符导入的类的数量是 5 。在 IDEA 中,如果你在同一个包中导入的类超过 5 个的时候,将会默认使用通配符导入。
具体情况具体分析
这个我们认为和公司的编码规范有关,如果公司默认的编码规范就是不允许有通配符导入。
那你就别通配符导入吧,那么你忍受下在代码前面有几十行的代码导入,通常 IDE 有代码折叠功能,这也能忍受。
如果你是通过 GitHub 的代码查看的话,那么恭喜你,第一页基本上看不到什么东西。
本文共计652个文字,预计阅读时间需要3分钟。
这个问题应该所有使用过Java第一课的人都应该知道,不要使用通配符导入。主要问题是你的本地命名空间变得混乱。最简单的说法就是,使用Date这个对象。
这个问题应该是所有使用过 Java 第一课的人都会告诉你不要使用通配符导入。
主要问题
主要的问题是它使你的本地命名空间变得混乱。
用最简单的说法就是 Date 这个对象,你可能在 java.sql.Date 和 java.util.Date 都会有这个对象。
如果你使用通配符导入的话,就完全不知道用哪个对象了。
通配符导入真的有那么讨厌吗
从代码执行效率来说,使用通配符导入没有任何区别。
例如:
java.io.*和java.io.File都会编译成相同的二进制代码。
所以在运行时,是否使用通配符导入完全没有区别。
IDEA 默认使用通配符导入的类的数量是 5 。在 IDEA 中,如果你在同一个包中导入的类超过 5 个的时候,将会默认使用通配符导入。
具体情况具体分析
这个我们认为和公司的编码规范有关,如果公司默认的编码规范就是不允许有通配符导入。
那你就别通配符导入吧,那么你忍受下在代码前面有几十行的代码导入,通常 IDE 有代码折叠功能,这也能忍受。
如果你是通过 GitHub 的代码查看的话,那么恭喜你,第一页基本上看不到什么东西。

