본문 바로가기

Java

자바 Optional 문법

https://mangkyu.tistory.com/70를 참고하였습니다.

무엇을 배웠나요?

  • 자바 8에서부터 Optional클래스를 이용해 NPE를 방지할수 있도록 도와준다.
  • Optional<T>는 null이 올 수 있는 값을 감싸는 Wrapper 클래스이다.
  • Optional 클래스는 각종 메서드들을 통해 값이 null이더라도 바로 NPE가 발생하지 않게 해준다.
  • Optional 생성하기
    • Optional.empty() - 값이 Null인 경우
    • Optional.of() - 값이 Null이 아닌 경우
    • Optional.ofNullable() - 값이 Null일수도, 아닐수도 있는 경우
  • Optional은 null 또는 값을 감싸서 NPE(NullPointerException)로부터 부담을 줄이기 위해 등장한 Wrapper 클래스이다.
  • Optional은 값을 Wrapping하고 다시 풀고, null 일 경우에는 대체하는 함수를 호출하는 등의 오버헤드가 있으므로 잘못 사용하면 시스템 성능이 저하된다.
  • 메소드의 반환 값이 절대 null이 아니라면 Optional을 사용하지 않는 것이 좋다.
  • Optional은 메소드의 결과가 null이 될 수 있으며, null에 의해 오류가 발생할 가능성이 매우 높을 때 반환값으로만 사용되어야 한다.

궁금한 점은 무엇인가요?

  • 실무에서 Optional 문법이 자주 사용되는 경우를 알고 싶다.

더 필요하다고 생각한 것이 있나요?

'Java' 카테고리의 다른 글

자바8 Stream  (0) 2022.09.09
자바8 람다  (0) 2022.09.09
자바 for문에서 break사용하기  (0) 2022.08.04