Java 공부

String , new String

고줭 2021. 10. 1. 10:06
public static void main(String[] args) {
        String a = "a";
        String b = new String("a");
        String c = "a";
        String d = new String("a");
        String e = c;

        System.out.println("a : " + System.identityHashCode(a));
        System.out.println("b : " + System.identityHashCode(b));
        System.out.println("c : " + System.identityHashCode(c));
        System.out.println("d : " + System.identityHashCode(d));
        System.out.println("e : " + System.identityHashCode(e));
}

객체가 만들어지는 횟수는 3번입니다.

같은 내용의 값이라도 new는 새롭게 객체를 생성하는 것이기 때문입니다.

 

System.identityHashCode()메서드로 이 객체의 주솟값을 알 수 있는데 결과를 보면 a, c, e 는 값이 같고 b, d는 같은 내용물임에도 주솟값이 다른걸 알 수 있습니다. 메모리영역과 관련이 있는데 이 부분은 더 공부해야겠네요

'Java 공부' 카테고리의 다른 글

== equals 뭐가 달라?  (0) 2021.10.22
Optional 객체 다루기  (1) 2021.10.05
자바 공식문서 보는방법.  (0) 2021.03.29
그래들 스프링 이클립스에 임포트하기  (0) 2021.02.25
자바 배열 Array  (0) 2021.02.08