Java 是否应该使用通配符导入( wildcard imports)

这个问题应该是所有使用过 Java 第一课的人都会告诉你不要使用通配符导入。

主要问题

主要的问题是它使你的本地命名空间变得混乱。

用最简单的说法就是 Date 这个对象,你可能在 java.sql.Date 和 java.util.Date 都会有这个对象。

如果你使用通配符导入的话,就完全不知道用哪个对象了。

通配符导入真的有那么讨厌吗

从代码执行效率来说,使用通配符导入没有任何区别。

例如:
java.io.* 和 java.io.File 都会编译成相同的二进制代码。

所以在运行时,是否使用通配符导入完全没有区别。

IDEA 默认使用通配符导入的类的数量是 5 。在 IDEA 中,如果你在同一个包中导入的类超过 5 个的时候,将会默认使用通配符导入。

具体情况具体分析

这个我们认为和公司的编码规范有关,如果公司默认的编码规范就是不允许有通配符导入。

那你就别通配符导入吧,那么你忍受下在代码前面有几十行的代码导入,通常 IDE 有代码折叠功能,这也能忍受。

如果你是通过 GitHub 的代码查看的话,那么恭喜你,第一页基本上看不到什么东西。

我们认为,不需要认为通配符导入是下山猛虎,如果有代码导入冲突的话,在编译阶段就能发现了,没有必要拿着教科书的所谓经验不放。

如果觉得 IDEA 的默认 5 的配置太小了,建议就调整到 12 或者更高。

相信所谓使用通配符导入的情况绝大部分情况下不会造成什么困扰,同时还能增加代码的简洁度。

如果你有什么看法也可以一起讨论讨论喔。

Java 是否应该使用通配符导入( wildcard imports) - Java - OSSEZ这个问题应该是所有使用过 Java 第一课的人都会告诉你不要使用通配符导入。 主要问题主要的问题是它使你的本地命名空间变得混乱。 用最简单的说法就是 Date 这个对象,你可能在 java.sql.Date 和 java.util.Date 都会有这个对象。 如果你使用通配符导入的话,就完全不知道用哪个对象了。 通配符导入真的有那么讨厌吗从代码执行效率来说,使用通配符导入没有任何区别。 例如: java.io.…https://www.ossez.com/t/java-wildcard-imports/14046

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HoneyMoose

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值