如果我有以下课程
public class Foo {
public void bar(){
fooBar();
}
private void fooBar(){
System.out.println("text...");
}
}
相反,我也可以做像
这样的事情 public class Foo {
public void bar() {
new inner().fooBar();
}
private class inner {
private void fooBar() {
System.out.println(" text ...");
}
}
}
什么时候应该使用内部类而不是私有方法?如果该功能特定于class Foo
那么使用内部类是有意义的,但同样也可以通过private method
来实现,这只能在类本身中访问。
答案 0 :(得分:4)
对于您的示例,您不需要内部类。您的第一个解决方案简单,易于阅读且充足。
在以下情况下,内部类很有用:
编辑:每个示例,按要求