Life is Good

수콩이의 시선

Coding/JAVA

[기본 API 클래스] Object 클래스(equals(), toString())

Soocong 2022. 4. 4. 11:14

[참고] 라이브러리 추가 방법

 

1. 프로젝트 폴더 마우스 오른쪽 우클릭 >  Export > Java > JAR file 

 

 

2. 원하는 클래스 선택> next > finish

 

 

다른 폴더에서 작성한 클래스를 import하여 사용할 수 있다. 

import api01.Object.(클래스명);

 


객체 비교 equals() : Object 클래스의 eqauls() 메소드는 비교 연산자인 ==와 동일한 결과를 리턴한다. 두 객체가 동일한 객체라면 true를 리턴하고 그렇지 않으면 false를 리턴한다.

 

객체 문자 정보 toString() : Object클래스의 toString() 메소드는 객체의 문자 정보를 리턴한다. 객체의 문자 정보란 객체를 문자열로 표현한 값을 말한다. 기본적으로 Object클래스의 toString() 메소드는 "클래스명@16진수해시코드" 로 구성된 문자 정보를 리턴한다.

 

 

 

 

String 클래스의 equals()

heap   stack  
h   a 0x100
i      
    b 0x100
new String hi 0x200 x 0x200
new String hi 0x300 y 0x300

 

new라는 키워드 메모리 공간 따로 할당받는다. 따라서 x, y의 주소값이 다르기 때문에 21라인이 출력이 안된다. 

String은 equals()함수로 처리하자. 

 

 

https://docs.oracle.com/en/java/javase/14/docs/api/java.base/java/lang/String.html

 

 

예제 1) 

 

 

@Override해서 최상위 클래스인 Object 클래스가 제공하는 eqauls함수를 재정의 할 수 있다. 

 

pwd 매개변수 하나 더 추가해서 작성하여 결과값을 비교해보자. 

 

 

 

 

 

 

 

예제 2) 

 

 

toString()으로 value (Int 클래스는 Integer) 를 String으로 바꾸었다.

 

member.toString() 

 

getter,setter,override 자동생성 소스 위에서 오른쪽 마우스 source > Generate getter setter, Generate toString()

Su.java -> DTO 혹은 VO 라고 부른다. (데이터 정의부분)