Object 클래스(최상위 부모 클래스)
1. toString()
항상 객체명을 출력할 때에는 toString()이 생략되어 있다.
toString()을 통해 출력되는 문자열이 마음에 들지 않는다면, 재정의하여 수정하도록 한다.
2. equals() : 주소값 비교(==)
※ String 클래스에서 값을 비교하도록 재정의 되었다.
3. hashCode() : 해당 객체의 주소값
※ String 클래스에서 상수값의 주소를 리턴하도록 재정의 되었다.
---------------------------------------------------------------------------------
Wrapper Class : 기본 자료형들의 클래스 타입
클래스타입 객체 = new 클래스타입(일반 타입); //boxing
클래스타입 객체 = 클래스타입.valueOf(일반타입의 값); //고버전에서는 valueOf를 사용한다.
일반타입 변수 = 박싱한객체.000Value(); //unboxing
int data_i = 10;
Integer data_I = new integer(data_i); // boxing
Integer data_I = integer.valueOf(data_i); // boxing
data_i = data_I.intValue(); // unboxing
JDK4 이상부터는 auto를 지원한다.
클래스타입 객체 = 일반타입의 값; //auto boxing
일반타입 변수 = 객체; //auto unboxing
int data_i = 10;
Integer data_I = data_i; // auto boxing
data_i = data_I // auto unboxing
Wrapper 클래스를 사용하는 이유
원시타입(일반타입)을 박싱하면 다양한 메소드를 제공받을 수 있다.
객체로 사용해야 할 때에는 반드시 박싱을 해주어야 한다.
'JAVA' 카테고리의 다른 글
[JAVA] HashSet, HashMap (0) | 2021.11.21 |
---|---|
[JAVA] 컬렉션 프레임워크 - ArrayList (0) | 2021.11.20 |
[JAVA] 예외처리, API (0) | 2021.11.20 |
[JAVA] 추상 클래스, 인터페이스, 내부 클래스, 익명 클래스 (0) | 2021.11.20 |
[JAVA] 다형성과 Casting (0) | 2021.11.17 |