我发现自己经常犯以下错误。
public class Foo{
Bar bar;
public void doSomething(){
Bar bar = makeNewBar();
// bla bla
}
}
错误是我想设置 Foo 的酒吧,而不是本地酒吧。即,我应该说bar = makeNewBar()
,不是Bar bar = makeNewBar()
。是否有编译器警告标志或可以检测到这样的“命名空间冲突”的东西?如果没有,有什么好的方法可以避免这种情况(除了不犯错误,这显然是最好的选择=p)?