举例来说/**
 * @author Administrator
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */class Chinese{
    
    public static void print(){
        System.out.println("this is 中国人");
        
    }
   
}
class Guangdongren extends Chinese{
    public static void print(){
        System.out.println("this is 广东人 ");
    }
    
}
class HunanRen extends Chinese{
    public static void print(){
        System.out.println("this is 湖南人 ");
    }
}
class GuangzhouRen extends Guangdongren{
    public static void print(){
        System.out.println("this is 广州人  ");
    }
}public class Test {
    
     public static void main(String args[]){
         
         //Chinaese h=new HunanRen();
          //h.print1();
         Chinese c=new Chinese();//这样编译可以通过,但运行会抛出异常
          HunanRen h=(HunanRen)c;//  这是因为向下转型错误,中国人不一定是湖南
         
         HunanRen h=new HunanRen();//这样就没有问题,这是向上转型,
         Chinese c=(Chinese)h;    //湖南人一定是中国人。。
       
         h.print1();
     }
  }