本文目录
在java中编写一个类的时候必须要编写构造器吗
在回答这个问题前我想说的是如果自己手写代码最好至少写一个无参构造方法,养成一个良好的习惯很重要。
OK,转入正题。
Java中编写一个类时必须要写构造器么?
我的答案是必须。
为什么这么说呢,构造方法用于构造该类的实例对象,Java语言通过new关键字来调用构造方法,从而返回该类的实例。
构造方法是一个类创建对象的根本途径,如果一个类没有构造方法,这个类通常无法创建实例,因此,Java语言提供了一个功能:
如果我们没有为一个类编写构造方法,则系统会为该类提供一个默认的无参的构造方法。
可能有些小伙伴们会问了,我怎么在我们项目中没见到一个写构造函数的?
我的猜想有以下几种可能:
①开发人员比较了解这种机制,懒得写
②忘了写
③用了lombok或者其他自定义的注解
@NoArgsConstructor :注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor :注解在类上;为类提供一个全参的构造方法
希望能帮到你,手机打字不易,暂且不引申更多内容了。
感兴趣的话欢迎关注,有问题可以互相交流学习。
为什么不推荐使用Lombok
侵入性太强,绑架全组人员:
一人使用,逼迫全组人员都要安装该插件。如果你不安装插件,你代码都编译不通过。
编译速度太慢:
由于这个是在编译是去修改你的字节码,然后如果你代码中大量使用它的话,那么在编译阶段就会耗费非常多的时间。编译阶段耗费个十几分钟不是不可能
为什么很多人说java代码中出现过多的set方法不好如何避免过多的出现set方法
解决方案
使用lombok 插件,具体的方法在项目中引用lombok类库。然后通过注解的方式就可以了不用显式声明getter、setter等方法。开发利器。在编译期lombok会在编译时生成相关的方法。
lombok网址: