@NoArgsConstructor

@NoArgsConstructor,提供一个无参的构造方法。

package com.huey.hello.bean;

import java.util.Date;

import lombok.Data;
import lombok.NoArgsConstructor; @NoArgsConstructor
@Data
public class Student { private int studNo;
private String studName;
private Date birthday; // 提供了一个含参构造方法,就不会再默认提供无参构造方法
public Student(int studNo, String studName, Date birthday) {
super();
this.studNo = studNo;
this.studName = studName;
this.birthday = birthday;
} public static void main(String[] args) {
Student stud = new Student();
stud.setStudNo(10001);
stud.setStudName("huey");
stud.setBirthday(new Date());
System.out.println(stud); // [OUTPUT]: Student(studNo=10001, studName=huey, birthday=Sat Aug 01 00:03:43 CST 2015)
}
}

@RequiredArgsConstructor

@RequiredArgsConstructor,为所有 final 和 @NonNull 修饰的字段生成一个构造方法。

package com.huey.lombok;

import lombok.Getter;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import lombok.Setter; @RequiredArgsConstructor
public class RequiredArgsConstructorExample { @Getter
private final String finalField;
@NonNull
@Getter @Setter
private String nonNullField;
@Getter @Setter
private String commonField; public static void main(String[] args) {
RequiredArgsConstructorExample foo = new RequiredArgsConstructorExample("FINAL FIELD", "NON NULL FIELD");
System.out.println(foo.getFinalField()); // [OUTPUT]: FINAL FIELD
System.out.println(foo.getNonNullField()); // [OUTPUT]: NON NULL FIELD
} }

@AllArgsConstructor

@AllArgsConstructor,提供一个全参的构造方法。

package com.huey.hello.bean;

import java.util.Date;

import lombok.AllArgsConstructor;
import lombok.Data; @AllArgsConstructor
@Data
public class Student { private int studNo;
private String studName;
private Date birthday; public static void main(String[] args) {
Student stud = new Student(10001, "huey", new Date());
System.out.println(stud); // [OUTPUT]: Student(studNo=10001, studName=huey, birthday=Sat Aug 01 00:03:43 CST 2015)
}
}

Lombok(1.14.8) - @NoArgsConstructor, @RequiredArgsConstructor & @AllArgsConstructor的更多相关文章

  1. Lombok(1.14.8)的简单示例

    分享自: http://blog.csdn.net/huey2672/article/details/42240985 Lombok是一种Java™实用工具,可用来帮助开发人员消除Java的冗长,尤其 ...

  2. Lombok(1.14.8) - @Getter, @Setter, @ToString, @EqualsAndHashCode & @Data

    @Getter / @Setter @Getter 和 @Setter,分别实现了 Gette r和 Setter 方法. package com.huey.hello.bean; import ja ...

  3. Lombok(1.14.8) - @Synchronized

    @Synchronized @Synchronized,实现同步. package com.huey.lombok; import java.util.Date; import lombok.Sync ...

  4. Lombok(1.14.8) - @SneakyThrows

    @SneakyThrows @SneakyThrows,声明异常. package com.huey.lombok; import java.io.UnsupportedEncodingExcepti ...

  5. Lombok(1.14.8) - @Cleanup

    @Cleanup @Cleanup,关闭流.如果最后清理资源的方法不是 close(),可以指定,例如 @Cleanup("clean"). package com.huey.lo ...

  6. Lombok(1.14.8) - @Log

    @Log @Logs,生成一个日志对象. package com.huey.lombok; import lombok.extern.java.Log; @Log public class LogEx ...

  7. Lombok(1.14.8) - @NonNull

    @NonNull @NonNull,生成一个非空检查. package com.huey.lombok; import lombok.Getter; import lombok.NonNull; im ...

  8. lombok标签之@Data @AllArgsConstructor @@NoArgsConstructor -如何去除get,set方法。@Data注解和如何使用,lombok

    在代码中我们可以只加上标签@Data 而不用get,set方法: val : 和 scala 中 val 同名, 可以在运行时确定类型; @NonNull : 注解在参数上, 如果该类参数为 null ...

  9. lombok标签之@Data @AllArgsConstructor @@NoArgsConstructor -如何去除get,set方法。@Data注解和如何使用,lombok

    在代码中我们可以只加上标签@Data 而不用get,set方法: val : 和 scala 中 val 同名, 可以在运行时确定类型; @NonNull : 注解在参数上, 如果该类参数为 null ...

随机推荐

  1. linux 查看当前所在目录的全路径

    有时候,使用linux的shell的时候需要查看当前位置的全路径,可以使用 pwd命令 当然,知道了该命令就可以通过man pwd来查看该命令的全部帮助手册.

  2. MVC神韵---你想在哪解脱!(十四)

    修正票价字段的精度 前面我们追加数据的时候遗留下来一个问题,就是在追加数据的时候,票价(Price)字段中输入的是9.99元,但是电影清单显示画面中该数据的票价字段显示为10元,这是为什么?这个问题发 ...

  3. IOC使用Unity 实现依赖注入

    转自:http://www.cnblogs.com/techborther/archive/2012/01/06/2313498.html http://www.cnblogs.com/xishuai ...

  4. socket断开连接的四次握手及常见过程解析

    TCP的协议文档对TCP的一些规定:文档名称-RFC793  TCP消息头的控制位 URG:紧急指针字段有效 ACK:确认头部字段有效 PSH:强制函数 RST:重置链接 SYN:同步系列号码 FIN ...

  5. AngularJS应用的解析

    模板(Templates) 模板是您用HTML和CSS编写的文件,展现应用的视图. 您可给HTML添加新的元素.属性标记,作为AngularJS编译器的指令. AngularJS编译器是完全可扩展的, ...

  6. 最小投票BZOJ 1934([Shoi2007]Vote 善意的投票-最小割)

    上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助.今天在这里和大家一起学习一下最小投票 1934: [Shoi2007]Vote 好心的投票 Time Limit: 1 Sec Memory L ...

  7. Js Pattern - Namespace Pattern

    bad code // BEFORE: 5 globals // Warning: antipattern // constructors function Parent() {} function ...

  8. Visual Prolog 的 Web 专家系统 (9)

    GENI的核心 -- 推理机(3)一些谓词 为了集中注意力.较好地分析GENI推理机核心程序,应该做些准备工作,弄明确一些起辅助作用的谓词功能. is_htmlfile(Rulexpl) is_htm ...

  9. Java log code example

    Java log example Logrecord filter import java.util.logging.Filter; import java.util.logging.Level; i ...

  10. iOS小结

    一.内存管理情况 1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段 落,开始等待用户的操作,自动释放 ...