Java:匿名类作为现有实现接口的子类?
我有接口 IA
、接口 IB 扩展 IA
和 A 类实现 IA
。
现在我想创建一个从 A
扩展并实现 IB
的匿名类。
那会是什么样子?我想到了这样的事情:
new A() implements IB { /* ... */ }
( Error: Type mismatch: cannot convert from A to IB )
或者:
new IB() extends A { /* ... */ }
( Error: Syntax error on token(s), misplaced construct(s) )
或者是否不可能创建类似的东西作为匿名类?
I have interface IA
, interface IB extends IA
and class A implements IA
.
Now I want to create an anonymous class which extends from A
and implements IB
.
How would that look like? I thought about something like this:
new A() implements IB { /* ... */ }
( Error: Type mismatch: cannot convert from A to IB )
or:
new IB() extends A { /* ... */ }
( Error: Syntax error on token(s), misplaced construct(s) )
Or is it not possible to create something like that as an anonymous class?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想您可以创建一个抽象的、命名的内部类,将两者结合起来,并用您的匿名类扩展它。
有点笨拙,但我认为你不能同时实现两者。
I suppose you could create an abstract, named inner class that combined the two and extend that with your anonymous class.
Bit clumsy, but I don't think you can implement both.