当前位置: 首页 > news >正文

网站的优势与不足龙华区住房和建设局网站官网

网站的优势与不足,龙华区住房和建设局网站官网,苏州做网站优化,杭州外贸公司有哪些一、Lombok介绍 Lombok是一个Java库#xff0c;可以通过注解来简化Java类的编写#xff0c;减少冗余的样板代码。它提供了一系列的注解#xff0c;用于自动生成常见的代码#xff0c;如getter和setter方法、构造函数、equals和hashCode方法、toString方法等。通过使用Lomb…一、Lombok介绍 Lombok是一个Java库可以通过注解来简化Java类的编写减少冗余的样板代码。它提供了一系列的注解用于自动生成常见的代码如getter和setter方法、构造函数、equals和hashCode方法、toString方法等。通过使用Lombok开发者可以更加专注于业务逻辑的实现减少了繁琐的重复劳动。 二、Lombok常用注解 2.1  Getter/Setter  Getter和Setter注解是Lombok库的一部分它们会自动为你的类生成getter和setter方法。这些方法通常用于访问类的私有字段。可以添加在类上或者方法上。 这是如何使用这些注解的一些基本示例 import lombok.Getter; import lombok.Setter;Getter Setter public class User {private String name;private int age;private String password;} AccessLevel是Lombok中的一个属性用于指定生成的getter、setter方法的访问级别。 AccessLevel有三个可选值 AccessLevel.PUBLIC生成public访问级别的getter方法。AccessLevel.PROTECTED生成protected访问级别的getter方法。AccessLevel.NONE不生成getter方法属性保持私有无法从外部访问。 上面的基本示例代码如果希望外部不能操作password属性即可使用AccessLevel属性 import lombok.Getter; import lombok.Setter;Getter Setter public class User {private String name;private int age;Getter(AccessLevel.NONE)Setter(AccessLevel.NONE)private String password; } 2.2  ToString ToString是Lombok库中的一个注解用于自动生成toString方法。通过在类上添加ToString注解Lombok将根据类的字段生成一个toString方法返回一个包含类名和字段值的字符串。 下面是一个使用ToString注解的示例 import lombok.ToString;ToString public class Person {private String name;private int age; } 在这个示例中Lombok会自动生成一个toString方法如下所示 public String toString() {return Person(name this.getName() , age this.getAge() ); } 2.3  EqualsAndHashCode EqualsAndHashCode是Lombok库中的一个注解它自动生成equals()和hashCode()方法。当你在类上添加EqualsAndHashCode注解后Lombok会根据类的字段生成相应的equals()和hashCode()方法。 equals()方法用于比较两个对象是否相等而hashCode()方法返回对象的哈希码值。在Java中这两个方法是Object类的一部分用于支持对象比较和散列操作。 以下是一个使用EqualsAndHashCode注解的示例 import lombok.EqualsAndHashCode;EqualsAndHashCode public class Person {private String name;private int age; } Lombok将根据这个类的字段生成以下equals()和hashCode()方法 Override public boolean equals(Object obj) {if (this obj) return true;if (obj null || getClass() ! obj.getClass()) return false;Person person (Person) obj;return age person.age Objects.equals(name, person.name); }Override public int hashCode() {return Objects.hash(name, age); } 2.4  NonNull NonNull 是 Lombok 库中的一个注解用于指示一个参数、返回值或字段不能为 null。当你在类的方法或字段上使用 NonNull 注解时Lombok 会自动生成校验代码确保该方法或字段在使用前不为 null。 以下是一个使用 NonNull 注解的示例 import lombok.NonNull;public class Example {NonNullprivate String name;public void setName(NonNull String name) {this.name name;}public String getName() {return name;} } 在上面的示例中name 字段和 setName() 方法都使用了 NonNull 注解。这表示 name 字段不能为 null如果尝试将 null 值赋给 nameLombok 将自动生成校验代码抛出异常。同样setName() 方法也不会允许传入 null 参数。 使用 NonNull 注解可以帮助开发人员避免空指针异常并在编译时检查非空约束。它是一种方便的工具可以提高代码的可读性和健壮性。 2.5  NoArgsConstructor NoArgsConstructor 是 Lombok 库中的一个注解用于自动生成一个无参构造函数。当你在类上添加 NoArgsConstructor 注解时Lombok 会根据类的字段生成一个无参构造函数。 2.6  RequiredArgsConstructor了解 RequiredArgsConstructor 是 Lombok 库中的一个注解它会自动生成一个包含所有需要特殊处理例如需要使用 final 修饰符或NonNull注解的参数的构造函数。当你在类上添加 RequiredArgsConstructor 注解时Lombok 会根据类的字段生成一个构造函数该构造函数的参数是使用final关键字修饰的参数或使用NonNull注解的参数。 2.7  AllArgsConstructor AllArgsConstructor 是 Lombok 库中的一个注解用于自动生成一个包含所有字段的构造函数。当你在类上添加 AllArgsConstructor 注解时Lombok 会为该类生成一个包含所有字段的构造函数。这个构造函数会使用参数的名字作为参数的名称。 2.8  Data最常用 Data 是 Lombok 库中的一个注解它为 Java 类自动生成 getter、setter 方法、toString() 方法、equals()、hashCode() 和 和特殊处理使用 final 修饰符或NonNull注解的参数的构造函数。通过在类上添加 Data 注解Lombok 会根据类的字段生成这些方法。 具体来说Data 注解包含以下四个子注解 Getter 和 Setter为类的字段生成 getter 和 setter 方法。ToString为类生成 toString() 方法该方法返回类的实例的字符串表示形式。EqualsAndHashCode为类生成 equals() 和 hashCode() 方法。RequiredArgsConstructor为类生成一个包含所有需要特殊处理使用 final 修饰符或NonNull注解的参数的构造函数。 请注意如果你使用 Data 注解Lombok 会自动生成这些方法而无需手动编写这些代码。 Data public class User {private String name;private int age; } 2.9  Builder炫技必备链式编程 Builder 是 Lombok 库中的一个注解用于自动生成一个 builder 类。通过在类上添加 Builder 注解Lombok 会为该类生成一个 builder 类该 builder 类具有用于设置每个字段的 setter 方法以及一个用于创建最终对象的 build() 方法。 使用 Builder 注解可以简化代码并使代码更易于阅读和维护。它使得代码更加清晰明了避免了手动编写 builder 类的繁琐过程。 周式概括在实体类上使用Builder注解后在实体类中会生成一个builder()方法该方法用于return一个对应的builder类(构造器)。在构建器中实体类中的每个参数都会对应创建类似于 setter 的方法方法名与该参数名相同并且返回值是构建器本身便于链式调用。还会提供一个会build 方法return实体类对象。 Builder public class User {private String username;private String password; } 编译后 public class User {private String username;private String password;User(String username, String password) {this.username username;this.password password;}public static User.UserBuilder builder() {return new User.UserBuilder();}public static class UserBuilder {private String username;private String password;UserBuilder() {}public User.UserBuilder username(String username) {this.username username;return this;}public User.UserBuilder password(String password) {this.password password;return this;}public User build() {return new User(this.username, this.password);}public String toString() {return User.UserBuilder(username this.username , password this.password );}} } 1.在实体类中会创建一个 builder 方法它的目的是用来创建构建器 2.创建一个名为 ThisClassBuilder 的内部静态类并具有和实体类相同的属性称为构建器 3.在构建器中对于目标类中的所有的属性和未初始化的 final 字段都会在构建器中创建对应属性 4.在构建器中创建一个无参的 default 构造函数 5.在构建器中实体类中的每个参数都会对应创建类似于 setter 的方法方法名与该参数名相同。 并且返回值是构建器本身便于链式调用 6.在构建器中会创建一个 build 方法调用 build 方法就会根据设置的值进行创建实体对象 7.在构建器中会生成一个 toString 方法 USer user User.builder().username(admin).password(admin).build(); 2.10  Slf4j Slf4j是Lombok库中的一个注解它可以为Java类自动添加一个名为log的日志记录器。Slf4j注解使用了SLF4JSimple Logging Facade for Java日志框架。通过使用Slf4j注解您无需手动创建private static final Logger log LoggerFactory.getLogger(YourClassName.class)这样的日志记录器而是直接使用log变量进行日志记录。 使用Slf4j注解的示例代码如下所示 import lombok.extern.slf4j.Slf4j;Slf4j public class MyClass {public void myMethod() {log.debug(Debug log message);log.info(Info log message);log.error(Error log message);} } 在上述代码中通过使用Slf4j注解即可在MyClass中自动添加一个名为log的日志记录器。然后您可以在方法中使用log变量来记录日志。在示例中使用了不同的日志级别debug、info和error记录不同级别的日志信息。 三、Lombok使用  3.1 引入依赖 dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId /dependency3.2 安装插件第一次使用时 IDEA中File-Settings-Plugins搜索安装Lombok插件。 3.3 在Java类中使用Lombok注解 在Java类中使用Lombok注解您可以在需要简化的Java类中使用Lombok的注解来自动生成代码。以下是一些常用的Lombok注解 通过在类上添加这些注解Lombok会自动生成相应的代码。 Getter / Setter: 自动生成字段的getter和setter方法。ToString: 自动生成toString()方法用于输出对象的字符串表示。EqualsAndHashCode: 自动生成equals()和hashCode()方法。NoArgsConstructor / RequiredArgsConstructor / AllArgsConstructor: 自动生成无参数构造函数、指定参数的构造函数或包含所有参数的构造函数。Data: 是一个组合注解相当于同时使用了Getter、Setter、ToString、EqualsAndHashCode、RequiredArgsConstructor注解。Slf4j: 自动生成日志记录器。
http://www.sadfv.cn/news/261327/

相关文章:

  • 江苏手机网站建设网站建设费用计入无形资产
  • 鄂州网站制作企业马鞍山建设集团有限公司网站
  • 免费创建网站平台有哪些建设银行科技中心网站
  • 搜索网站不显示图片潜江哪里做网站
  • 网站建设布吉织梦和wordpress哪个安全
  • 技能培训网站怎么建设银行网站注册
  • 建设网站需要做app吗哪些网站可以找到做跨境电商的公司
  • 商务网站开发文档国家网站备案查询
  • 网站建设公司 南宁洛阳做网站的公司哪家好
  • 织梦 营销型网站手机咋做网站
  • 自己制作头像的网站 设计 动漫网站建设技术服务协议
  • 常见的网站推广方法有哪些学平面设计的网站
  • 网站备案忘记密码怎么办wordpress ts cd
  • 怎么做简单的微信浏览的网站佛山市企业网站seo报价
  • 推广企业网站域名网站备案幕布要求
  • 网站域名注册申请网站建设方案的企业
  • 网站出售黄页88和58那个推广好
  • 网站开发量计算邯郸网络用语
  • 顺德网站建设渠道做网站嘉兴
  • 重庆网站建设吧国内免费的建网站平台
  • 容桂网站制作值得信赖建设监理收录网站
  • 大型免费网站制作河北建设厅网站修改密码在哪
  • 给网站做广告wordpress接入微软小冰
  • 青岛网站开发培训价格wordpress上传文件去重复
  • 杭州网站建设方案成都建好的网站出租
  • 只做正品的购物网站百度显示网站正在建设中
  • fontawesome 网站西安seo服务商
  • 线上做网站赚钱微信分销系统价格
  • 建设网站前的需求分析站长工具seo综合查询排名
  • 温州做网站价格wordpress转移过电脑