关于对象的转型01的运用

来源:互联网 发布:java if语句 编辑:程序博客网 时间:2024/06/15 00:01

package basic;

public class Cast1 {

 /**
  * @param args
  */
 public static void main(String[] args) {
  Cast1 test =new Cast1();
  Animal a = new Animal("animal");
  Dog d = new Dog("bigYellow","yellow");
  Cat c = new Cat("buleCat","bule");
  
  test.f(a);
  test.f(d);
  test.f(c);
  
 }
 //人家要求传Animal的对象 你传Dog Cat的都可以
 /*public  void f(Animal a){
  System.out.println("name "+a.name);
 }*/
 
 
 //不同的类,特殊处理
 public  void f(Animal a){
  System.out.println("name "+a.name);
  if(a instanceof Cat){
   Cat cc = (Cat)a;
   System.out.println(cc.eyecolor);   
  }
  if(a instanceof Dog){
   Dog dd = (Dog)a;
   System.out.println(dd.furcolor);
  }
  
 }
 
 

}