抽象类逻辑问题

时间:2017-11-13 14:59:33

标签: java

我正在尝试创建一个程序,这是我的问题:

我有界面'引擎'。

EngineFactory.createEngine(request)

在工厂我有:

if(request instanceof TypeA){ return new TypeAAA(request);}
if(request instanceof TypeB){ return new TypeBBB(request);}

在我尝试做的时候,遗憾的是在构造函数中:

(TypeA) requestArg

它是说 - 未定义的构造函数。如果没有(TypeAAA)TypeA requestArg的明显转换,我可以这样做吗?

1 个答案:

答案 0 :(得分:1)

我假设您想将其投放到TypeA,而不是TypeAAA,如果它是TypeA的实例?

无论如何,是的,即使您检查过它是否是instanceof之前的课程,您仍然必须自己投出。在Kotlin中,编译器很聪明,可以解决它,但是使用Java,你仍然需要进行转换。

相关问题