public interface IMethodCallback
{
boolean Execute();
}
...
IMethodCallback callback = new IMethodCallback
{
boolean Execute()
{
return false;
}
};
这会导致错误。我如何在Java中做这样的事情?匿名类错误
public interface IMethodCallback
{
boolean Execute();
}
...
IMethodCallback callback = new IMethodCallback
{
boolean Execute()
{
return false;
}
};
这会导致错误。我如何在Java中做这样的事情?匿名类错误
你缺少括号()
IMethodCallback callback = new IMethodCsallback() {
// your impl method
};
你错过了构造函数的括号:
IMethodCallback callback = new IMethodCallback()
{
public boolean Execute()
{
return false;
}
};
IMethodCallback callback = new IMethodCallback() //You have missed the parenthesis of constructor.
{
public boolean Execute() {
return false;
}
};
,并遵循Java命名约定(驼峰)
正如其他人所说,你错过了在new IMethodCallback
之后的圆括号。但是您还需要声明您的实现方法Execute()
public
,因为这是实现您的界面的方法。接口中的方法隐含地为public
。
IMethodCallback callback = new IMethodCallback()
{
// Implements an interface; must be public
public boolean Execute()
{
return false;
}
};
接口中的方法是隐式公开的,实现者不能削弱访问特权。 – rgettman
+1啊,错过了。 –
我不明白为什么这是downvoted。世界某些地方称'()'“括号。” –
+1这不应该downvoted! –
@MattBall呵呵,我很惊讶,downvoter关心评论? – PermGenError