Methods Guice:注入和编译器
如果我声明了一个方法: 公共汽车makeCar(@Named(“carClassName”)字符串carClassName){ //... } 编译器(eclipse)似乎不高兴(即,它不允许我调用没有参数的类)Methods Guice:注入和编译器,methods,compilation,arguments,guice,Methods,Compilation,Arguments,Guice,如果我声明了一个方法: 公共汽车makeCar(@Named(“carClassName”)字符串carClassName){ //... } 编译器(eclipse)似乎不高兴(即,它不允许我调用没有参数的类) 在动态调用此方法时,如何注入这些参数?有没有办法向方法注入调用 解决方案1:在调用者中插入carClassName class Whatever { private @Named("carClassName") String carClassName); public vo
在动态调用此方法时,如何注入这些参数?有没有办法向方法注入调用 解决方案1:在调用者中插入carClassName
class Whatever {
private @Named("carClassName") String carClassName);
public void dosomething() {
...
Cat cat = makeCar(carclassName);
...
}
}
解决方案2:使用工厂
class CarFactory {
private @Named("carClassName") String carClassName);
public Car create() {
return makeCar(carClassName);
}
}
也就是说,Guice不会影响编译时语法规则——相反,它会在运行时更改项的值。。。。。有趣的是,有时我会忘记这一点。谢谢你的提醒