Java 从接口对象强制转换为实现它的类的对象?

Java 从接口对象强制转换为实现它的类的对象?,java,inheritance,interface,polymorphism,Java,Inheritance,Interface,Polymorphism,我正在尝试强制转换接口对象: ScreenController startScreenController = nifty.getScreen("start").getScreenController(); (ScreenController是一个接口) 到名为PrisonStartScreenControl的类的对象: startScreenController(PrisonStartScreenControl).setNifty(nifty); ^但是这一行会导致错误。我知道startS

我正在尝试强制转换接口对象:

ScreenController startScreenController = nifty.getScreen("start").getScreenController();
(ScreenController是一个接口)

到名为PrisonStartScreenControl的类的对象:

startScreenController(PrisonStartScreenControl).setNifty(nifty);

^但是这一行会导致错误。我知道startScreenController对象等于PrisonStartScreenControl,那么如何才能将接口强制转换为其实现者类?

强制转换需要位于要强制转换的变量的左侧,而不是右侧,例如:

((PrisonStartControl)startScreenController).setNifty(nifty);

但是,你为什么要选演员呢?setNifty()应该是界面上的一个方法,因此不需要强制转换。

您应该用您正在使用的语言标记您的问题,以获得更多关注。@simbo1905谢谢,我忘了。不过,我的答案是:Dso你不在乎别人可能有同样的问题,却找不到吗?:-)只需要一点时间就可以编辑它,使它成为一个更好的问题others@simbo1905哎呀。我对这个有点陌生,所以我没有注意到/考虑编辑按钮没有问题。确保对你认为高质量的问题、答案和评论都投赞成票。这会奖励工藤积分。还要确保单击勾选框接受问题的最佳答案。祝你好运哇!我不知道秩序很重要。我以为这就像乘法。非常感谢你。