SpringBoot日常:编码规范之import *

前言

日常开发中,我们在编码过程中会经常忽略import 包的问题,我们会使用import语句中的通配符*来引入整个包中的所有类。尽管这样做能够简化代码编写和阅读,但是过度使用import *也会带来一些坏处,本文将探讨这些问题并给出相应的解决方案。

问题剖析

在讨论import *的坏处之前,让我们先来看一下Java代码中的包引入机制。Java中使用import语句来告诉编译器我们希望在代码中使用其他包中的类。一般来说,我们可以使用以下两种方式来引入包中的类:

  • 显示引入:使用import语句引入特定的类,例如import java.util.Map;。
  • 通配符引入:使用import语句引入整个包中的所有类,例如import java.util.*;。

对于较小的项目来说,使用import *可能不会带来太大的问题。但是在大型项目中,使用import *可能导致以下几个问题:

1、命名冲突:当引入多个包时,可能会出现类名相同的情况,这时编译器将无法确定使用哪个类,从而导致编译错误。

2、可读性降低:通常情况下,我们会根据类的包名来判断其功能。但是使用import *后,编译器无法提供这样的信息,使得代码的可读性大大降低。

3、冗余引入:使用import *会导入整个包中的所有类,但是实际上我们可能只需要其中的几个类。这样就会导致代码中引入了很多不需要的类,增加了代码量。

4、编译时间延长:使用import *会导致编译器需要处理更多的类,从而增加了编译的时间。

解决

说了这么多,那我们要如何去尽可能规避这个问题呢?

一般来说我们是用工具或流程进行解决。

这里用idea作为说明,通过如下设置让 IDEA 不会在导入时添加*,这样设置其实并不是一定不会变成 import xxx.*,而是在同包类大于 999 个时才使用

相关推荐
行百里er1 分钟前
加个依赖就生效?一行搞定 Spring Boot Starter 自动装配
java·后端·监控
月华路7 分钟前
G1 新生代对象晋升老年代:实现机制与 GC 日志
java·jvm·算法
Su米苏16 分钟前
Redis高级用法
spring boot·redis
AI人工智能+电脑小能手31 分钟前
大白话说Java设计模式-34-命令模式(业务实战篇)
java·spring·设计模式·命令模式·异步任务·撤销重做·事务封装
净重21克34 分钟前
万字长文!TLS协议升级避坑手册:JDK老项目适配TLS1.2/1.3全流程拆解
java·springboot·java安全
一直C37 分钟前
【数据结构】哈希表+算法复杂度与经典排序查找(C语言)
java·linux·开发语言·数据结构·算法·ubuntu·散列表
paopaokaka_luck37 分钟前
基于springboot3+vue3的车间生产管理系统(Echarts图形化分析、BI报表)
java·前端·spring boot·学习·echarts
程序员鱼皮43 分钟前
3 大 DeepSeek Harness 进阶玩法,招多个大肥鱼帮我干活!
前端·后端·ai编程
苍何1 小时前
DeepSeek 终于支持多模态了(附实测及接入教程)
后端
KoPa1 小时前
HeySmart:大模型开源网关基座-请求生命周期与钩子引擎
前端·后端