Object 배열

SungMin·2026년 5월 22일

자바 심화 정리

목록 보기
3/34

Object는 모든 타입의 객체를 담을 수 있다.
따라서, Object[]을 모든 참조 타입(Object를 상속한 객체)를 담을 수 있다.

package poly;

public class ObjectPolyExample2 {
    static void main(String[] args) {
        Dog dog = new Dog();
        Car car = new Car();

        Object object = new Object();

        Object[] objects = {dog, car, object};

        size(objects);
    }

    private static void size(Object[] objects) {
        System.out.println("전달된 객체의 수는 " + objects.length);
    }


}

Object 타입의 배열은 세상의 모든 객체를 담을 수 있기 때문에, 어떤 새로운 클래스가 추가되어도 Object를 받는 구조는 변경할 필요가 없다.
즉, 코드가 “타입 변화에 열려 있다”.

서로 다른 타입이지만 Object 배열 하나로 묶을 수 있다.


만약 Object가 없다면?

  • 모든 객체를 받을 수 있는 메서드를 만들 수 없다.
  • 모든 객체를 저장할 수 있는 배열을 만들 수 없다.
  • Object가 없다면 매번 타입별로 메서드를 오버로딩해야 한다.
profile
오늘도 한 걸음씩 나아가

0개의 댓글