class Object
클래스 Object는 Java에서 모든 클래스의 superclass이다.
class Object의 멤버 메서드
boolean equals(Object obj)
int hashCode()
String toString()
Class<?> getclass()
Java의 모든클래스는 내가 만들어 주지 않아도 이미 위의 메서드를 가지고 있다.
다만 내 의도대로 작동하지는 않을 것이다.
(오버라이딩을 해서 써야함)
그럼 왜 만들어놨을까???
toString()
만약 toString메서드를 따로 만들어주지 않는다면
예 : PhoneBook@db12340
이런식으로 반환됨
equals(Object)
Object클래스의 equals 메서드의 매개변수는 Object 타입이다.
매개변수로 제공된 객체와 자기 자신의 동일성을 검사한다.
이 메서드를 의도대로 사용하려면 오버라이딩 해야한다.
Class Class
모든 클래스는 하나의 Class 객체를 가진다.
이 객체는 각각의 클래스에 대해서 유일하다.
메서드 getClass()는 Object 클래스가 제공하는 메서드이며, 이 유일한 Class 객체 반환한다.
Wrapper class
Java에서 primitive type데이터와 non-primitive type데이터,
즉 객체는 근본적으로 다르게 처리된다.
가령 Object 타입의 배열에는 다형성의 원리에 의해서 모든 종류의 객체를 저장할 수 있다.
하지만 int double, char 등의 primitive type 데이터는 저장할 수 없다. 객체가 아니므로
때때로 primitive type 데이터를 객체로 만들어야할 경우가 있다.
이럴 때 Integer, Double , Character 등의 wrapper class를 이용한다.
기본 타입의 데이터를 하나의 객체로 포장해주는 클래스
예)
int a = 20;
Integer age = new Integer(a);
int b = age.intValue(); // b는 20이됨
데이터 타입간의 변환 기능을 제공한다.
예)
String str ="1234";
int d = Integer.parseInt(str);
'알고리즘 with 자바 > 자료구조' 카테고리의 다른 글
| 추상클래스와 인터페이스 2 (0) | 2021.07.07 |
|---|---|
| 추상클래스와 인터페이스 1 (0) | 2021.07.07 |
| 스케줄러 프로그램 (0) | 2021.07.01 |
| 상속 3 (0) | 2021.06.30 |
| 상속 2 (0) | 2021.06.29 |