11. @EqualsAndHashCode
@EqualsAndHashCode
public class EqualsAndHashCodeExample
{
private int id;
private String name;
}
//
@EqualsAndHashCode(exclude = "age")
class EqualsAndHashCodeExample2 {
private int id;
private String name;
private int age;
}
public class EqualsAndHashCodeExample {
private int id;
private String name;
@Override
public boolean equals(final Object o) { … }
@Override
public int hashCode() { … }
}
public class EqualsAndHashCodeExample2 {
private int id;
private String name;
private int age;
// age
@Override
public boolean equals(final Object o) { … }
@Override
public int hashCode() { … }
}
13. @AllArgsConstructor,
@NoArgsConstructor,
@RequiredArgsConstructor
@AllArgsConstructor
@NoArgsConstructor
public class ConstructorExample {
private int id;
private String name;
}
@RequiredArgsConstructor
class ConstructorExample2 {
private final int id;
private String name;
}
public class ConstructorExample {
private int id;
private String name;
public ConstructorExample(
final int id, final String name) {
this.id = id;
this.name = name;
}
public ConstructorExample() {
}
}
class ConstructorExample2 {
private final int id;
private String name;
public ConstructorExample2(final int id) {
this.id = id;
}
}
15. @Data
@Data
public class DataExample {
private final int id;
private String name;
}
public class DataExample {
private final int id;
private String name;
public DataExample(final int id) {
this.id = id;
}
public int getId() {
return this.id;
}
public String getName() {
return this.name;
}
public void setName(final String name) {
this.name = name;
}
@Override
public boolean equals(final Object o) { … }
@Override
public int hashCode() { … }
@Override
public String toString() { … }
}
17. @Value
@Value
public class ValueExample {
private int id;
private String name;
}
public final class ValueExample {
private final int id;
private final String name;
public ValueExample(
final int id, final String name) {
this.id = id;
this.name = name;
}
public int getId() {
return this.id;
}
public String getName() {
return this.name;
}
@Override
public boolean equals(final Object o) { … }
@Override
public int hashCode() { … }
@Override
public String toString() { … }
}
25. val
public static void main(String[] args) {
val list = new ArrayList<String>();
list.add("a");
list.add("b");
val item = list.get(0);
System.out.println(item);
}
public static void main(String[] args) {
final ArrayList<String> list =
new ArrayList<String>();
list.add("a");
list.add("b");
final String item = list.get(0);
System.out.println(item);
}