从匿名类中访问私有成员变量的第一个建议修复是:
将'foo'的可见性更改为'default'
我个人从未喜欢Java中默认权限的非显式特性。此外,我希望最严格的权限将消除警告。
理想情况是,如果Java具有'文件私有'级别权限,但它没有。
我的问题是,是否有可能以及如何将Eclipse建议的修改更改为“受保护”而不是“默认”?
答案 0 :(得分:1)
你的问题是矛盾的。 default
可见性修饰符 is more restrictive 比protected
修饰符更高。这就是为什么eclipse建议那个。您应该使用该建议值。
如果你因为创建一个子类而需要一个字段的protected修饰符,那么eclipse就会提出这个建议。因此,在较长的开发阶段,您可以先将同一字段的修饰符更改为默认值,然后再将其保护为受保护的,但默认情况下不应该将其设置为受保护。
如果您想创建高质量的源代码,您对语言功能的个人喜好应该比既定的最佳实践和编码指南低得多。
答案 1 :(得分:0)
虽然可以添加自己的快速修复,但没有简单的方法可以更改快速修复。
请参阅此问题:How do I configure Eclipse to create protected java methods by default instead of private?
有Poor Man's Quick Fix Eclipse plugin,但是从2008年开始,我还没有尝试过。