null 때문에 발생하는 문제
- 에러의 근원 : NPE
- 코드를 어지럽힌다. : 중첩된 null 확인 코드
- 형식 시스템에 구멍을 만듦 : null이 할당되면 시스템의 다른부분으로 null이 퍼졌을때 애초에 null이 어떤 의미로 사용되었는지 알 수 없음
Optional클래스를 사용
메서드의 시그니처만 보고도 선택형 값인지 여부를 구별 할 수 있다.
public class Person{
private Optional<Car> car; //사람이 차를 소유했을 수도 소유하지 않았을 수도 있다
public Optional<Car> getCar();{
return car;
}
}
Optional 사용
- 잠재적 null이 될 수 있는 대상을 Optional로 감싸기
- 팩토리메서드 Optional.empty , Optional.of , Optional.ofNullable 이용해서 Optional 객체 만들기
Optional<Object> value = Optional.ofNullable(map.get)"key"));
'* > What I did today' 카테고리의 다른 글
객체지향 (0) | 2023.03.23 |
---|---|
How to Achieve More (3) | 2023.03.14 |
DB Connection Pool (0) | 2023.02.15 |
Tree (0) | 2023.01.10 |
GC (0) | 2023.01.01 |
static 변수는 JVM의 어디에 저장될까 ? (0) | 2022.12.25 |
JVM (0) | 2022.12.24 |
Java - static 사용의 지양 (0) | 2022.12.17 |