小编pin*_*pin的帖子

如何根据子类类型调用java方法?

我正在尝试根据子类将对象分派给单独的方法.

例如,考虑这两个对象

class A extends I {}
class B extends I {}
Run Code Online (Sandbox Code Playgroud)

和方法

void dispatch(I i) {}
Run Code Online (Sandbox Code Playgroud)

dispatch(),我想根据类型调用一个方法i.因此,如果i实际上是类型A,handlerA(A a)则将调用该方法.如果它是B类型,handlerB(B b)将被调用,依此类推......我试过方法重载但是我猜它不会这样工作

实现这一目标的最佳方法是什么?我想避免使用if/else语句......

提前致谢,

编辑:我不能修改任何这些类.

java oop polymorphism

8
推荐指数
2
解决办法
2474
查看次数

标签 统计

java ×1

oop ×1

polymorphism ×1