设example一共有三个子类三个list 
List<example子类1>
List<example子类2>
List<example子类3>
分别装着example的三个子类的对象这三个list都通过同一super方法做遍历,每取出来一个根据其实际类型调用对应的处理方法处理.public void super(List<? extends example> l)
{
  for(int i = 0; i < l.size(); i++)
  {
    sub(l.get(i));
  }
}public void sub(example的子类1 e)
{
}public void sub(example的子类2 e)
{
}public void sub(example的子类3 e)
{
}请问要想达到以上效果,代码改怎么写

解决方案 »

  1.   

    为什么不把sub方法定义成抽象的,让子类自己去实现?
      

  2.   

    当前类为子弹类.
    list里面盛放的分别是坦克,墙(目前为止)
    现在在子弹类里面要做遍历.看看有没有与某个坦克或墙有交集,有的话,要在子弹类里面进行处理,而不是去对应类中处理.因为之前就是按在对应类中处理的逻辑写的,后来发现没办法统一接口.
      

  3.   

    二楼说的有道理,由子类实现各自的sub方法。
      

  4.   

    先用二楼的方法,如果实在改不动
    用if (e instanceof class_name)一个一个判断吧