용어 정리

optional

그기고기 2024. 1. 11. 11:16
728x90
반응형
SMALL

1. optional(옵셔널) 이란 ?

 

 - 개발을 하다 보면 NPE를 만나게 되는데 옵셔널은 NPE(NullPointerException) 문제를 해결할 수 있는 방법을 제공한다.

 - 즉, null 값으로 인해 에러가 발생하는 현상을 효율적으로 방지하는 것이다.

 - null 체크해야 될 부분이 많다면 코드가 복잡해져 가독성이 떨어지는 단점이 있다.

 - Java 8 에서는 Optional<T> 클래스를 도입하였는데, '존재할 수도 있지만 안 할 수도 있는 객체' 로 null 이 될 수도 있는 객체를 감싸고 있는 Wrapper 클래스이다.

 - Optional로 객체를 감싸서 사용하게 되면 NPE 방지를 위해 null 체크를 직접 하지 않아도 되며, 명시적으로 해당 변수가 null 일 수도 있다는 가능성을 포함하고 있기 때문에 불필요한 방어 로직을 줄일 수 있다.


 

2. 옵셔널 클래스 (Optional Class)

 

 - 옵셔널 클래스는 모든 타입의 객체를 담을 수 있는 래퍼 클래스이다.

 - Optional 객체를 생성하려면 of() 메서드 도는 ofNullable() 메서드를 사용한다. 참조 변수의 값이 null 일 가능성이 있다면, ofNullable() 메서드를 사용한다.

 - isPresent() : isPresent() 메서드는 Optional 객체의 참조 변수의 값이 null 이면 false / null 이 아니면 true를 반환한다.

 - empty() : Optional 타입의 참조 변수를 기본값으로 초기화하려면 empty() 메서드를 사용한다.

 - get() : Optional 객체에 저장된 값을 가져오려면 get() 메서드를 사용한다.

              만약, 참조 변수의 값이 null 일 가능성이 있다면, orElse() 메서드를 통해 티폴트 값을 지정할 수 있다.

 

 

*출처

[Java] 자바 옵셔널(Optional) 개념 정리 및 활용 (tistory.com)

 

[Java] 자바 옵셔널(Optional) 개념 정리 및 활용

Optional 옵셔널(Optional)은 NPE(NullPointerException) 문제를 해결할 수 있는 방법을 제공한다. 즉, null 값으로 인해 에러가 발생하는 현상을 효율적으로 방지하는 것이다. 연산 결과를 Optional에 담아서 반

ittrue.tistory.com

[JAVA] Optional 개념 및 사용법, 예제 (tistory.com)

 

[JAVA] Optional 개념 및 사용법, 예제

1. Optional이란? 개발을 하다 보면 NullPointException(NPE)을 만나게 된다. 가장 많이 발생하는 에러 중 하나라고 하는데, 이를 피하기 위해선 null을 체크하는 로직이 추가되어야 한다. DeviceVo deviceVo = devi

ynzu-dev.tistory.com

 

728x90
반응형
LIST

'용어 정리' 카테고리의 다른 글

MyBatis vs JPA  (0) 2024.01.16
DBMS, RDBMS  (0) 2024.01.15
Import  (0) 2024.01.11
MVC, SpringMVC  (1) 2024.01.11
라이브러리 vs 프레임워크  (0) 2024.01.10