嗨:我有一个定义以下方法的类:
public String abstract getAnimalName();
和一个子类
class Ralph extends Animal
{
public String getAnimalName(){return "RALPH";}
}
我希望“拉尔夫”的getAnimalName是静态的,因为只有一个无状态
拉尔夫名字的版本。
因此,我想静态地实现getAnimalName,同时仍然满足该接口。这可能吗 ?也许,有一种方法可以使用依赖注入或AOP技术通过在运行时代理静态对象来提供对象实现吗?
显而易见的解决方案(让对象范围的方法包装静态方法)对我的口味有点boiler头。
最佳答案
不,您的最后建议是您所能做的。
这可能是警告,表明设计中有可疑的东西。
Ralph是一个实例,因此需要遵守getAnimalName
的约定。