Back-End/Java
10. 기본 클래스(Core Class)
Yerin Thea Yoo
2026. 2. 12. 00:05
Java는 대부분의 기능을 클래스 형태로 제공한다.
그 중에서도 가장 기본이 되는 핵심 클래스들이 있다.
1. Object 클래스
Object는 모든 클래스의 최상위 부모 클래스다.
class Student {}
위 코드는 실제로 다음과 같다.
class Student extends Object {}
모든 클래스는 자동으로 Object를 상속받는다.
1) 주요 메서드
| 메서드 | 설명 |
| toString() | 객체 정보를 문자열로 반환 |
| equals() | 객체 비교 |
| hashCode() | 해시 코드 반환 |
| getClass() | 클래스 정보 반환 |
2) toString()
객체를 출력할 때 호출된다.
System.out.printIn(student);
기본적으로는 클래스명@해시값 형태로 출력된다.
보통 오버라이딩해서 사용한다.
3) equals()
기본 equals는 주소값 비교다.
a.equals(b);
논리적 등등 비교를 하려면 오버라이딩해야 한다.
2. String 클래스
문자열을 다루는 클래스다.
String str = "Java";
String은 참조형이며, 불변(immutable) 객체다.
1) 불변 객체란?
값이 한 번 생성되면 변경되지 않는다.
String s = "Java";
s += " Programming";
실제로는 새로운 객체가 생성된다.
2) 주요 메서드
| 메서드 | 설명 |
| length() | 길이 |
| charAt() | 문자 추출 |
| substring() | 부분 문자열 |
| equals() | 문자열 비교 |
| contains() | 포함 여부 |
3. Wrapper 클래스
기본형을 객체로 감싸는 클래스다.
| 기본형 | Wrapper |
| int | Integer |
| double | Double |
| char | Character |
| boolean | Boolean |
1) 왜 필요할까?
- 컬렉션은 객체만 저장 가능
- 객체 메서드 사용 가능
ArrayList<Integer> list = new ArrayList<>();
2) 오토 박싱 / 언박싱
Integer num = 10; //오토 박싱
int value = num; //언박싱
컴파일러가 자동 변환한다.
4. Math 클래스
수학 관련 유틸리티 클래스다.
Math.abs(-10);
Math.max(3, 5);
Math.random();
- static 메서드로 구성
- 객체 생성 불필요
5. System 클래스
시스템 관련 기능 제공
System.out.printIn();
System.currentTimeMillis();
System.exit(0);
- 표준 출력
- 시간 측정
- 프로그램 종료