package ch08;

import ch05.sub.*;

public class Ch0801
{
// Object클래스 : 자바에서 가장 최상위 클래스로
// 모든 내장클래스자료형 및 사용자정의 클래스도
// 전부 Object 클래스의 하위클래스로 간주된다.
// 제공되는 메서드 : equals메서드, toString메서드
// 고로 대부분의 하위 클래스의 레퍼런스는 형변환없이
// Object클래스의 래퍼런스로 대입 가능하다.
 public static void main(String[] args)
 {
  String a="Hello Java";
  //Object는 모든 클래스의 최상위이므로 String의 경우
  //하위이므로 형변환 필요없다.
  Object b=a;
  //부모클래스의 레퍼런스를 자식클래스의 레퍼런스로 대입할경우
  //형변환이 필요하다.
  String c=(String)b;
 
  //기본자료형은 Object클래스와 계승관계에 있지 않으므로 대입이 안됨.
  int d=1;
  //Object e=1;
  Object e=new Integer(1);
 
  System.out.println("1"=="1"); //잘 작동되는것이 보이나.. Jsp.쪽에서.. 에러가능성.
  // String비교의 경우 같다의 비교형은 ==연산자를
  //가급적 쓰지 않고 equals메서드를 쓰는것이 좋음.
  //(==연산자는 기본자료형의 비교에 사용.)
 
  System.out.println("1".equals("1"));
 
  //equals 메서드는 Object클래스에 존재하는 메서드이므로
  //자바의 모든 하위클래스(사용자저으이 클래스까지) 계승되어 사용,  
  //toString()도 Object클래스의 멤버함수이므로 하위클래스 전부 계승  
 
  String f = b.toString();
  Car carA = new Car();
  //carA.equals(obj)
 
  System.out.println(carA.toString());
 
 }
}

Posted by 말없제이
,