* Object Class

  - 모든 클래스는 기본적으로 이 클래스를 상속받는다.
  - 모든 클래스의 객체는 이 클래스 타입으로 형변환을 할 수 있다.
  - 가장 상위에 있는 공통 데이터 타입
  - 메소드가 특정 클래스의 타입을 받지 않고 다양한 모든 타입을 받으려면
     인수의 타입을 Object로 지정해야 한다.

 

============================

 

package oop8ex;

class English extends Object{
    String publisher = "스크린영어사";
   
    public void show(){
        System.out.println("출판사: " + publisher);
        System.out.println("시리즈: " + "screenplay");
    }  
}

public class ObjectEx1 {
    public static void main(String[] args) {
        //왼쪽의 자료형=오른쪽의 자료형
        English eng=new English();
        eng.show();
       
        Object obj=new English();
        //obj.show();//에러. 부모에 존재하는 메소드만 호출 가능
       
        //부모를 자식으로 형변환
        English mat=(English)obj;
        mat.show();
       
    }

}

==============================

 

package oop8ex;

//메소드가 받는 객체가 Object 타입이면 모든 객체를 전달 받을 수 있다

class Movie{
    public static void displayStar(Object obj){
        Screen screen=(Screen)obj;
        System.out.println(screen.getData());
    }
}

class Screen{
    public String getData(){
        return "";
    }
}

class TitleA extends Screen{
    public String getData(){
        return "댄싱퀸";
    }//override
}

class TitleB extends Screen{
    public String getData(){
        return "건축학개론";
    }//override
}

public class ObjectEx2 {
    public static void main(String[] args) {
       TitleA ta=new TitleA();
       System.out.println(ta.getData());      
       Movie.displayStar(ta);
      
       TitleB tb=new TitleB();
       Movie.displayStar(tb);
    }

}

'..열심히 공부하세.. > JAVA 문법' 카테고리의 다른 글

[34] 제네릭 Generics  (0) 2012.05.08
[33] Java Collections Framework  (0) 2012.05.08
[31] Exception 예외처리  (0) 2012.05.04
[30] Interface 구현  (0) 2012.05.03
[29] 내부클래스  (0) 2012.05.03

+ Recent posts