62,635
社区成员




class A
{
public void doA(A a)
{
a.doA(a);//只要这一条语句就行了,不要那么多的IF语句
}
}
class A1 extends A
{
public void doA(A a)
{
if(!(a instanceof A1))return;
A1 a1=(A1)a; //要这样强转回你自己的类型,就可以访问你自己特殊的数据了
a1.methodA1();//A1自己独有的方法与数据
}
private void methodA1()
{
System.out.println("A1自己独有的方法与数据");
}
}
class A2 extends A
{
public void doA(A a)
{
if(!(a instanceof A2))return;
A2 a2=(A2)a; //要这样强转回你自己的类型,就可以访问你自己特殊的数据了
a2.methodA2();//A2自己独有的方法与数据
}
private void methodA2()
{
System.out.println("A2自己独有的方法与数据");
}
}
public class Test12 {
public static void main(String[] args) {
// TODO Auto-generated method stub
A a=new A();
a.doA(new A1());
a.doA(new A2());
}
}