重学java 74.Lombok的使用

少点心气,多点干劲

                     —— 24.6.18

一、lombok的安装使用

1.作用:

        简化javabean开发

2.使用:

        a.下插件 ->如果是idea2022不用下载了,自带

        b.导lombok的jar包      安装教程:  http://t.csdnimg.cn/wq9MM

        c.修改设置

二、lombok的介绍

        Lombok通过增加一些“处理程序”,可以让javabean变得简洁、快速。
Lombok能以注解形式来简化java代码,提高开发效率。开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals等方法,而且需要维护。
Lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、equals、hashcode、tostring方法。出现的神奇就是在源码中没有getter和setter方法,但是在编译生成的字节码文件中有getter和setter方法。这样就省去了手动重建这些代码的麻烦,使代码看起来更简洁些。

三、lombok的使用及常用注解

@Getter和@Setter

        作用:生成成员变量的get和set方法。
        写在成员变量上,指对当前成员变量有效。
        写在类上,对所有成员变量有效。
        注意:静态成员变量无效。

@ToString

        作用:生成toString()方法。
        注解只能写在类上。

@NoArgsConstructor 和 @AlArgsConstructor

        @NoArgsConstructor:无参数构造方法
        @AlArgsConstructor:满参数构造方法。
        注解只能写在类上

@EqualsAndHashCode

        作用:生成hashCode()和equals()方法。
        注解只能写在类上。

@Data

        作用:生成get/set,tostring,hashCode,equals,无参构造方法
        注解只能写在类上。

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class Person {private String name;private Integer age;
}
public class Demo303Test01 {public static void main(String[] args) {Person person = new Person();person.setAge(18);person.setName("lcl");System.out.println(person.getName()+"..."+person.getAge());Person p1 = new Person("小明", 28);System.out.println(p1.getName()+"..."+p1.getAge());}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/29517.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

gitlab 身份验证手机号验证没86

处理方案 在浏览器中摁 【F12】打开控制台,选择网络模块,找到手机号列表的请求,请求是 https://gitlab.com/-/countries,右击数据区域点击【替换内容】如下: ![在这里插入图片描述](https://img-blog.csdnimg.cn/di…

【信息学奥赛】CSP-J/S初赛03 计算机网络与编程语言分类

第1节 计算机网络基础 1.1 网络的定义 所谓计算机网络,就是利用通信线路和设备,把分布在不同地理位置上的多台计算机连 接起来。计算机网络是现代通信技术与计算机技术相结合的产物。 网络中计算机与计算机之间的通信依靠协议进行。协议是计算机收、发…

Linux文件与内容查阅、归档压缩

#Linux系统基础 文件与内容查找、归档压缩 find命令搜索文件 grep对文件的内容进行搜索 tar命令进行文件的压缩与解压缩 一、文件的查找 格式实例:find . -name "123.txt"说明find起始目录查找类型查找条件./ 或 .-name“123.txt”在当前目录中查找…

CIC-DDoS2019-Detection

CIC-DDoS2019 对CIC-DDoS2019数据集进行检测,本文提供了如下内容: 数据清洗与合并机器学习模型深度学习模型PCA,t-SNE分析数据,结果可视化 代码地址:[daetz-coder](https://github.com/daetz-coder/CIC-DDoS2019-Detection) 1、数据集加载…

echart在线图表demo下载直接运行

echart 全面的数据可视化图表解决方案 | 折线图、柱状图、饼图、散点图、水球图等各类图表展示 持续更新中 三色带下表题速度仪表盘 地图自定义图标 动态环形图饼状图 动态水波动圆形 多标题指针仪表盘 温度仪表盘带下标题 横向柱状图排名 环形饼状图 双折线趋势变化

排序——快速排序

目录 思想 演示 代码实现 解释 优化 三数取中 小区间优化 补充 挖坑法 双指针法 非递归实现 思想 快速排序是一种二叉树结构的交换排序方法。 基本思想为:任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列&am…

​【数据结构与算法】冒泡排序:简单易懂的排序算法解析

💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《数据结构与算法》 期待您的关注 ​ 目录 一、引言 二、冒泡排序原理 🍃基本思想: 🍃算法…

自杀行为的神经生物学认识

自杀行为的神经生物学认识 编译 李升伟 隐藏在自杀行为背后的大脑生化机制正引领人类对自杀的认识从黑暗步入光明。科学家希望未来这些机制能带来更好的治疗和预防策略。 基斯 • 范希林根(Cornelis Van Heeringen)第一次遇见瓦莱丽( Va…

大模型技术工程师:抓住时代机遇,成为行业精英_

伴随AI大模型的火热,中国科技大厂们正在掀起一场「跑步AI化」的风暴。从顶层战略到业务线重构,AI无疑已成为大厂们押注未来的新故事。 大模型时代已经到来 大模型已成为全球竞争热点,一个大模型时代已经到来。 大模型具备三个特点&#xf…

新手一次学会SpringBoot项目部署 + Docker中运行Samba服务设置共享目录

SpringBoot项目部署 1.IDEA打包,在IDEA终端,输入mvn clean package 2.将项目target中的jar包放入linux目录 3.运行jar包 前台运行(直接显示输出): java -jar data-transport-server-0.0.1-SNAPSHOT.jar后台运行&…

鸿蒙开发网络管理:【@ohos.net.socket (Socket连接)】

Socket连接 说明: 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import socket from ohos.net.socket;socket.constructUDPSocketInstance constructUDPSocketInstance(): UDPSocket 创建…

已解决:geecg Column ‘id‘ in order clause is ambiguous

报错:Column id in order clause is ambiguous; MyBatis关联查询,相同字段名冲突,sql语句已经使用别名但仍然报错。 分析:写mapper映射文件时,在写到一对一关联,一对多关联时,由于两…

从11个视角看全球Rust程序员4/4:深度解读JetBrains最新报告

讲动人的故事,写懂人的代码 8 Rust程序员最喜欢用什么工具调试程序? 用println!或dbg!宏来调试一下 2022年:55%2023年:55%在IDE里玩玩UI调试 2022年:27%2023年:29%在控制台里调试调试 2022年:11%2023年:10%不调试,任性 2022年:5%2023年:6%有其他奇思妙想 2022年:1%…

骁龙662_高通SM6115主要参数_高通模块方案定制

骁龙662(SM6115)采用了全新的44 Kryo 260 CPU架构,由四核Cortex-A73(高达2.0 GHz)和四核Cortex-A53(高达1.8 GHz)组成。这种架构的设计使得骁龙662在性能上相较于上一代产品有了显著的提升,为用户提供了更快的运行速度和更流畅的使…

安卓TextView控件实现下划线

效果展示 这里需要使用到LayerDrawable&#xff0c;对应于<layer-list>标签。在drawable目录下新建一个text_underline.xml文件&#xff0c;text_underline.xml的代码如下&#xff1a; <?xml version"1.0" encoding"utf-8"?> <layer-lis…

TS安装及JS转换

第一步&#xff1a;先安装好node.js&#xff0c;可以在官方下载或我们提供压缩包直接安装好node.js Node.js的官方网站是下载 | Node.js 中文网 下载对应系统的版本。我们提供是64位。安装好后调出dos命名&#xff0c;输入 npm确认下有没有安装好。 第二步&#xff1a;安装cnpm…

机器学习笔记——无监督学习下的k均值聚类

k均值聚类算法原理 目标是将样本分类 原理&#xff1a;首先随机选择k何点作为中心&#xff0c;然后计算每一个点到中心的聚类&#xff0c;然后计算到每个中心的距离&#xff0c;选择到中心最短距离的那个中心所在的类进行归类&#xff0c;然后更新中心点&#xff0c;一直重复。…

vivado PKGPIN_NIBBLE

描述 PKGPIN_NIBBLE是PKGPIN_BYTEGROUP的一部分。参见PKGPIN_BYTEGROUP&#xff0c; 第122页了解该对象的描述。 相关对象 PKGPIN_BYTEGROUP和PKGPIN_NIBBLE与IO_BANK、PACKAGE_PIN和 PORT&#xff0c;如前所述。此外&#xff0c;每个PKGPIN_NIBBLE都与 Xilinx设备。您可以使用…

【触想智能】工业显示器定制时需要注意的重点问题

随着工业自动化的不断发展&#xff0c;工业显示器越来越重要。不同于普通的娱乐和商业应用&#xff0c;工业显示器需要更加耐用、可靠、安全&#xff0c;并且满足特定的工业环境和应用需求。 因此&#xff0c;仔细考虑和选择适合自己的工业显示器至关重要。本文将介绍一些您在进…

React 中的 ErrorBoundary

在 React 中&#xff0c;如果不做任何控制&#xff0c;当组件出现异常时&#xff0c;React 渲染就会停止&#xff0c;页面出现白屏&#xff0c;这种体验很不好。例如当用户输入某些非法数据&#xff0c;而前端都没有进行校验&#xff0c;页面出现白屏。这种情况下&#xff0c;最…