자바에서 공백 값과 널(Null) 값의 차이는?
안녕하세요.
고코더 입니다.
자바에서 null 값과 ""(빈 공백)은 어떻게 다른지 알아보려고 합니다. 얼핏보면 비슷해보이지만 완전히 다른 개념을 가지고 있습니다.
● 1. null
널(null)은 어떠한 값으로도 초기화 되지 않은 것입니다. 이렇게 초기화된 데이터는 내가 사용할 예정이다 정도로 컴파일러는 생각합니다. 그래서 참조형이지만 힙메모리상에 데이터를 만들어 내지 않습니다.
1 | String a = null; | cs |
● 2. ""(공백)
공백 값은 사실 하나의 스트링입니다. 예를 들면 "gocoder"로 변수를 선언한거처럼 빈 값을 메모리에 할당한 행동입니다.
1 | String b = ""; | cs |
● 3. 차이점 다시 정리
null은 사용하겠다고 예고만 해놓은 상태라면
""은 이미 사용한 것입니다.
마무리
실무에서는 공백으로 변수를 선언하지만 사실은 null로 해야 하는게 맞습니다.
'IT_Developers > JAVA' 카테고리의 다른 글
Spring - AOP 란? / 관점 지향 프로그래밍 / (1) (0) | 2020.03.19 |
---|---|
JAVA - 싱글톤(Singleton) 패턴이란? / 예제소스 (0) | 2020.03.17 |
JAVA - 옵저버 패턴(Observer Pattern) 이론만 쉽게 설명 (1) | 2020.03.17 |
JAVA - "equals"와 "==" 차이점을 알아봅시다. (0) | 2020.03.16 |
JAVA - 참조형(Reference)이란? / 대표적인 예시 (0) | 2020.03.16 |
댓글