【发布时间】:2013-05-31 09:41:23
【问题描述】:
我有一个抽象包装类 Foo,它通过提供接口阅读器来定义功能。当我实现一个单独的阅读器并提供它时,一切都很好。 当我试图通过内部类来做到这一点时,它会出错。在内部类中实现 Reader 是我的要求。
public abstract class Foo
{
private Reader reader;
public Foo(Reader reader)
{
this.reader = reader;
}
public void read()
{
this.reader.doit();
}
}
“由于某些中间构造函数调用,没有可用的 MapLink 类型的封闭实例”
public class ReaderFoo extends Foo
{
public class FooReader implements Reader
{
@Override
public void doit()
{
// functionality
}
}
public ReaderFoo ()
{
super(new FooReader());
}
}
我做错了什么?
【问题讨论】: