日期:2014-05-20  浏览次数:20742 次

如何把父类转换成子类?
JAVA中父类是不能强行转换成子类的,这个我清楚?但是最近在做一个项目时,遇到这种情况,我需要把父类的对象强行转换成子类的?请问各位大侠有什么好的解决办法没?
假如下面的例子:
Class A{}
Class B extends A{
  private String name;
  void setName(String n){...};
  String getName(){...};
}
 public class C  
  {  
  public static void main(String[] args)  
  {  
  System.out.println("强制类型转换A->B后的调用效果:");  
  A a = new A();  
  B b = B(a); //编译通过,但是运行出错
  b.setName("test");
  System.out.println(b.getName());
  }  

我的目的就是达到上面理想状态中的效果.
  }

------解决方案--------------------
A a = new b(); 
这样就可以了
------解决方案--------------------
此处借鉴的面向接口的思想, A a = new b();
------解决方案--------------------
用多态实现啊