안녕하세요 알통몬입니다. 공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
다른 객체를 참조하는지 알아볼 때 사용.
참조 타입 변수의 값은 힙 영역의 객체 주소이므로 결국 주소 값을 비교하는 것입니다.
동일한 주소 값을 갖고 있다는 것 => 동일한 객체를 참조한다는 뜻.
동일한 객체를 참조할 경우 == 연산 결과는 true !=의 연산결과는 false 입니다.
String var1 = "알통몬";
String var2 = "알통몬";
String var3 = new String("알통몬");
var1 == var2 의 연산결과는 같은 객체를 참조하고 있으므로 true 가 나오지만,
var1 == var3 이나 var2 == var3 은 다른 객체를 참조하므로 false가 나옵니다.
예제)
public class Example {
public static void main(String[] args) throws IOException {
String var1 = "알통몬";
String var2 = "알통몬";
String var3 = new String("알통몬");
boolean aaa = (var1==var2);
boolean bbb = (var1==var3);
boolean ccc = (var2==var3);
System.out.println(aaa);
System.out.println(bbb);
System.out.println(ccc);
}
}
null 과 NullPointerException
참조 타입 변수는 힙영역의 객체를 참조하지 않는다는 뜻으로 null값을 가질 수 있습니다.
null 값도 초기 값으로 사용할 수 있기 때문에 null로 초기화된 참조 변수는 스택 영역에 저장됩니다.
참조 타입 변수가 null 값을 가지는지 확인하려면 ==, != 연산을 하면 됩니다.
String var1 = null;
boolean aaa = (var1==null);
boolean bbb = (var1!=null);
System.out.println(aaa);
System.out.println(bbb);
예외 : 자바 프로그램 실행 도중에 발생하는 오류.
참조 변수를 사용하면서 가장 많이 발생하는 예외 중에 NullPointerException 이 있습니다.
이 예외는 참조 타입 변수를 잘못 사용하면 발생해요.
null값을 가지는 참조 타입 변수는 사용할 수 없습니다.
'자바' 카테고리의 다른 글
JAVA 자바 배열 타입 - 배열이란? , 배열의 선언 (0) | 2017.03.12 |
---|---|
JAVA 자바 String 타입 (0) | 2017.03.12 |
자바 참조타입 데이터 분류 타입과 메모리 사용영역 (0) | 2017.03.09 |
자바 조건식 - if , if else, if else if, 중첩 if / switch / for / while / do while / break / continue (0) | 2017.03.09 |
자바 연산자 - 단항 연산자 / 이항 연산자 / 삼항 연산자 (0) | 2017.03.09 |