카테고리 없음

자바의 클래스들 1. Object 클래스 : 모든 클래스의 최상위 클래스

코딩펭귄 2023. 12. 18. 23:26

Object 클래스

- 모든 클래스의 최상위 클래스 (루트 클래스)

- java lang패키지 안에 들어있음! -> 프로그래밍시 import 하지 않아도 자동으로 imort됨

- ex) String, Integer, System...

- 모든 클래스는 Object 클래스를 상속 받음

- Object 클래스의 메서드 중 (final로 선언되어있지 않은)일부는 재정의해서 사용할 수 있음

- 컴파일러가 extends Object를 추가함 ex) class Student => class Student extends Object

 

재정의해서 쓸수있는 메소드 예시

toString() 메서드

- 객체의 정보를 String으로 바꾸어서 사용할 때 쓰임

- String이나 Integer 클래스는 이미 재정의 되어 있음

 

 toString()메서드 재정의 예

 

객체에 대한 정보를 표현할때 toString을 많이 오버라이딩 해서 사용함

 

class Book {

	private String title;
	private String author;
	
	public Book(String title, String author) {
		this.title = title;
		this.author = author;
	}

	@Override
    //객체에 대한 정보를 표현할때 toString을 오버라이딩 해서 사용
	public String toString() {    
		return title +","+ author;
	}
	
}

public class BookTest {
	public static void main(String[] args) {
		Book book = new Book ("데미안", "헤르세");
		System.out.println(book);  //ch01.Book@5ca881b5 -> 클래스이름 + 가상메모리값
		
		String str = new String("test");
		System.out.println(str);  //test		
		// -> System.out.println(str.toString()); 이렇게 오버라이딩 되어있기때문! 
	}

// 출력
// 데미안,헤르세
// test