5.2.1 문자열의 표현과 객체 생성

jh·2022년 1월 24일
0

Do it! 자바 완전 정복

목록 보기
44/70

5.2 문자열을 저장하는 String

참조 자료형의 가장 대표적인 형태는 '클래스'다. 이번에는 자바가 제공하는 클래스 중 문자열을 저장하는 String 클래스를 알아보자. 이미 앞에서도 몇 가지 형태의 문자열을 써봤겠지만, 자바에서 가장 많이 쓰는 자료형 중 하나다.

5.2.1 문자열의 표현과 객체 생성
문자열은 반드시 큰따옴표(String a = "문자열")안에 표기해야 한다. 큰따옴표 안에는 String a = ""와 같이 아무런 문자열이 오지 않아도 상관없다. 하지만 큰따옴표는 절대 생략할 수 없다.
String 클래스의 객체를 생성하는 데는 크게 2가지 방법이 있다. 첫 번째 방법은 new 키워드를 사용하는 방법으로 생성자의 입력매개변수로 저장할 문자열을 입력한다.

🐧String 클래스의 객체 생성 방법 1

아직 클래스를 배우기 전이므로 이런 모양이 다소 어색해 보일 수 있지만, 대부분의 클래스가 이 방법으로 객체를 생성한다. 생성자의 개념은 아직 배우지 않았지만, 클래스명과 동일하면서 뒤에 소괄호가 있는 형태다. new 키워드는 배열에서 배웠으므로 실제 데이터가 힙 메모리에 위치한다는 것은 예측할 수 있을 것이다.
두 번째 방법은 간단히 문자열 리터럴, 즉 문자열 값만 입력하는 방법이다. 이제까지 여러 번 사용해봤을 것이다.

🐧String class의 객채 생성 방법 2

String 참조 변수명 = "문자열"

String str = "안녕";

첫 번째 방법을 사용하든 두 번째 방법을 사용하든 메모리에 저장되는 방식은 동일하다. String은 참조 자료형이므로 밑의 그림과 같이 실제 데이터인 String 객체는 힙 메모리에 위치하고 참조 변수는 힙 메모리의 실제 객체 위치를 가리키게 될 것이다. 하지만 이 두 가지 방법 사이에는 결정적인 차이가 1개 있다. 그 차이는 곧 설명하기로 하고, 여기서는 2가지의 String 객체를 생성하는 방법만 기억하자.

실습

        // String 객체 생성 1
        String str1 = new String("안녕");
        System.out.println(str1);

        // String 객체 생성 2
        String str2 = "안녕하세요";
        System.out.println(str2);

결과

profile
코딩 공부 중...

0개의 댓글