코드 그라데이션

[Java] toString() 에 대해 본문

Java, SpringBoot 추가 공부

[Java] toString() 에 대해

완벽한 장면 2023. 5. 4. 22:34

toString()

: 객체를 문자열로 표현하는 메소드.

  toString() 메소드를 호출하면 객체의 내용을 문자열로 반환한다.

 

- 이 메소드는 모든 Java 객체에 대해 기본적으로 구현되어 있으며, Object 클래스에서 상속받음.

   따라서 모든 Java 클래스에서 toString() 메소드를 사용할 수 있다.

 

기본 동작

- 해당 객체의 클래스 이름, '@' 기호, 그리고 객체의 해시 코드를 문자열로 반환함.

   그러나 대부분의 경우, 객체의 실제 내용을 더 유용한 방식으로 표현하기 위해 이 메소드를 재정의(override)한다.

 

예시

String 클래스에서 toString() 메소드는 해당 문자열 값을 그대로 반환하도록 재정의되어 있다.

이렇게 하면 String 객체를 출력할 때 문자열 값이 출력된다.

다른 클래스에서는 내부 상태를 요약하는 문자열을 반환할 수 있게 된다.

public class ExtoString {

  private String name;
  private int age;

  public ExtoString(String name, int age) {
    this.name = name;
    this.age = age;
  }

  @Override
  public String toString() {
    return "이름 : " + name + ", 나이 : " + age;
  }

 

위와 같이 ExtoString 클래스에서 toString() 메소드를 재정의하면,

ExtoString 객체를 출력할 때 nameage 필드의 값을 나타내는 문자열이 출력된다.

public static void main(String[] args) {

    ExtoString person = new ExtoString("John", 30);
    System.out.println(person.toString());
  }
}
 

출력 결과

이름 : John, 나이 : 30
728x90
Comments