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

网站建设技术论文市场推广计划方案

网站建设技术论文,市场推广计划方案,展会展厅设计制作公司,抖音代运营报价表文章目录 一些基本类上实用的注解及例子一、Data二、Accessors三、AllArgsConstructor四、NoArgsConstructor五、EqualsAndHashCode六、后面在补充!先这样吧,哈哈!总结 一些基本类上实用的注解及例子 一、Data Data 注解是一个组合注解&…

文章目录

  • 一些基本类上实用的注解及例子
  • 一、@Data
  • 二、@Accessors
  • 三、@AllArgsConstructor
  • 四、@NoArgsConstructor
  • 五、@EqualsAndHashCode
  • 六、后面在补充!先这样吧,哈哈!
  • 总结


一些基本类上实用的注解及例子


一、@Data

@Data 注解是一个组合注解,它相当于同时使用了 @ToString, @EqualsAndHashCode, @Getter / @Setter 和 @RequiredArgsConstructor 这几个注解。也就是说,当你在一个类上使用 @Data 注解时,Lombok 会自动生成这个类的 toString 方法、equals 和 hashCode 方法,以及所有非 static 和非 transient 字段的 getter 和 setter 方法。
示例:

import lombok.Data;  @Data  
public class User {  private String name;  private int age;  
}

上述代码会自动生成 name 和 age 字段的 getter 和 setter 方法,以及 toString、equals 和 hashCode 方法。

二、@Accessors

@Accessors 注解用于配置字段的访问器的行为。当设置 chain = true 时,setter 方法会返回 this,这样就可以实现链式调用。
示例:

import lombok.Data;  
import lombok.experimental.Accessors;  @Data  
@Accessors(chain = true)  
public class User {  private String name;  private int age;  
}

使用上述代码,你可以这样链式地设置字段的值:

User user = new User().setName("Alice").setAge(30);

这样,你可以更简洁地编写代码,提高可读性,并减少出错的可能性。但请注意,链式调用并不总是最佳实践,它主要适用于某些特定的场景,比如构建器模式或者当你需要连续设置多个字段的值时。在其他情况下,使用传统的 setter 方法可能更为清晰。

三、@AllArgsConstructor

@AllArgsConstructor 注解用于生成一个包含类中所有字段的构造器。这在你需要为所有字段提供初始值时非常有用。
示例:

import lombok.AllArgsConstructor;  @AllArgsConstructor  
public class User {  private String name;  private int age;  
}

上述代码会自动生成以下构造器:

public User(String name, int age) {  this.name = name;  this.age = age;  
}

四、@NoArgsConstructor

@NoArgsConstructor 注解用于生成一个无参数的构造器。如果你不希望为类中的任何字段提供初始值,或者字段已经有默认值(例如,基本类型或它们的包装类默认为 0 或 null),那么这个注解会非常有用。
示例:

import lombok.NoArgsConstructor;  @NoArgsConstructor  
public class User {  private String name;  private int age;  
}

上述代码会自动生成以下构造器:

public User() {  
}

五、@EqualsAndHashCode

@EqualsAndHashCode(callSuper = false) 是 Lombok 库中的一个注解,用于自动生成一个类的 equals() 和 hashCode() 方法。这个注解对于确保对象在比较时能够正确识别其唯一性非常有用,特别是在集合(如 HashSet 或 HashMap)中存储对象时。

参数 callSuper 用于控制生成的 equals() 和 hashCode() 方法是否应该调用超类(父类)的相应方法。设置为 false 意味着不会调用超类的 equals() 或 hashCode() 方法。

具体解释如下:

callSuper = false:默认情况下,Lombok 生成的 equals() 和 hashCode() 方法不会考虑超类的字段。这意味着只有当前类中的字段会被用于比较和生成哈希码。这适用于那些不继承其他实体类或者其超类不包含重要识别信息的类。
如果你有一个类继承自另一个包含重要识别字段的类(比如一个基类包含了一个主键字段),你可能希望生成的 equals() 和 hashCode() 方法也考虑这些字段。在这种情况下,你应该将 callSuper 设置为 true。

@EqualsAndHashCode(callSuper = true)  
public class ChildClass extends ParentClass {  private String someField;  // getters, setters, etc.  
}  public class ParentClass {  private Long id;  // getters, setters, etc.  
}

在上面的例子中,ChildClass 继承了 ParentClass,并且 ChildClass 使用了 @EqualsAndHashCode(callSuper = true)。这意味着当比较两个 ChildClass 对象是否相等时,不仅会考虑 someField 字段,还会考虑从 ParentClass 继承的 id 字段。同样地,生成的 hashCode() 方法也会基于这两个字段的值来计算哈希码。

总之,@EqualsAndHashCode(callSuper = false) 使得 Lombok 生成的 equals() 和 hashCode() 方法只考虑当前类中的字段,而不考虑从超类继承的任何字段。

六、后面在补充!先这样吧,哈哈!

总结

@作者:加辣椒了吗?
简介:憨批大学生一枚,喜欢在博客上记录自己的学习心得,也希望能够帮助到你们!
在这里插入图片描述

http://www.dtcms.com/wzjs/239318.html

相关文章:

  • 哪个网站做美食自媒体更好黄页污水
  • 昆明 网站建设广州百度推广开户
  • 微信小店可以做分类网站站长工具seo查询
  • 做淘宝客网站需要什么在线的crm系统软件
  • 怎么做网站发布手机app软件开发
  • 网站 扁平化seo人员的相关薪资
  • 自己做的网站出现左右滑动条深圳优化网站方法
  • 武安网站设计公司网站建站系统
  • wordpress 设置导航栏现在的seo1发布页在哪里
  • wordpress+判断标签泉州seo技术
  • 山东大学青岛校区建设指挥部网站b2b网站源码
  • 湛江网站seo推广一份完整的营销策划方案
  • 网站及单位网站建设情况自助建站系统平台
  • 外贸网站建设步骤独立站平台选哪个好
  • 做游戏的av迅雷下载网站网络营销的成功案例分析
  • 网站网站制作服务有产品怎么找销售渠道
  • 晋城网站建设费用百度官方电话24小时
  • 网站架构图怎么做手机优化大师官方版
  • 网站改版要注意什么最新疫情新闻100字
  • app个人主页设计吉林网站seo
  • 一个外国人做的破解游戏网站小区推广最有效的方式
  • 网站视觉艺术设计及色彩搭配厦门百度seo公司
  • 青海网站维护电商线上推广渠道
  • 俄语淘宝网站建设郑州seo技术
  • 哪些网站适合花钱做推广b站推广2023
  • 地方门户seo推广的特点
  • 制作网站得多少钱网站建站在线制作
  • 做怎样的网站能赚钱北京网络推广
  • 沈阳网站关键词优化服务好济南网站seo优化
  • 政府网站数据模块建设方案seo关键词词库