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

@Getter / @Setter

@Getter 和 @Setter,分别实现了 Gette r和 Setter 方法。

package com.huey.hello.bean;

import java.util.Date;

import lombok.Getter;
import lombok.Setter;

public class Student {

    @Getter @Setter
    private int studNo;
    @Getter @Setter
    private String studName;
    @Getter @Setter
    private Date birthday;

    public static void main(String[] args) {
        Student stud = new Student();
        stud.setStudName("huey");
        System.out.println(stud.getStudName());    // [OUTPUT]: huey
    }
}

 

@ToString

@ToString,实现了 toString() 方法。

package com.huey.hello.bean;

import java.util.Date;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

@ToString
public class Student {

    @Getter @Setter
    private int studNo;
    @Getter @Setter
    private String studName;
    @Getter @Setter
    private Date 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=Fri Jul 31 23:01:56 CST 2015)
    }
}

 

@EqualsAndHashCode

@EqualsAndHashCode,实现了 equals() 和 hashCode() 方法。

package com.huey.hello.bean;

import java.util.Date;

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

@EqualsAndHashCode
public class Student {

    @Getter @Setter
    private int studNo;
    @Getter @Setter
    private String studName;
    @Getter @Setter
    private Date birthday;

    public static void main(String[] args) {
        Student stud1 = new Student();
        stud1.setStudNo(10001);
        stud1.setStudName("huey");
        stud1.setBirthday(new Date());

        Student stud2 = new Student();
        stud2.setStudNo(10001);
        stud2.setStudName("huey");
        stud2.setBirthday(new Date());

        System.out.println(stud1.hashCode());        // [OUTPUT]: -349449895
        System.out.println(stud2.hashCode());        // [OUTPUT]: -349449895
        System.out.println(stud1.equals(stud2));     // [OUTPUT]: true
    }
}

 

@Data

@Data,相当上述三个 annotation 以及 @RequiredArgsConstructor。

package com.huey.hello.bean;

import java.util.Date;

import lombok.Data;

@Data
public class Student {

    private int studNo;
    private String studName;
    private Date birthday;

    public static void main(String[] args) {
        Student stud1 = new Student();
        stud1.setStudNo(10001);
        stud1.setStudName("huey");
        stud1.setBirthday(new Date());

        Student stud2 = new Student();
        stud2.setStudNo(10001);
        stud2.setStudName("huey");
        stud2.setBirthday(new Date());

        System.out.println(stud1.hashCode());        // [OUTPUT]: -349006373
        System.out.println(stud2.hashCode());        // [OUTPUT]: -349006373
        System.out.println(stud1.equals(stud2));     // [OUTPUT]: true
        System.out.println(stud1);                   // [OUTPUT]: Student(studNo=10001, studName=huey, birthday=Fri Jul 31 23:13:43 CST 2015)
    }
}

 

转载于:https://www.cnblogs.com/huey/p/4693389.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值