初学java,看到 java 自带 demo 里面的filechooserDemo
里面有个下面类
public class FileChooserDemo extends JPanel implements ActionListener {
..... //省略
private static SupportedLaF nimbusLaF;
private static class SupportedLaF
{ private final String name;
private final LookAndFeel laf; SupportedLaF(String name, LookAndFeel laf) {
this.name = name;
this.laf = laf;
} @Override
public String toString() {
return name;
}
}
....//省略
}
SupportedLaF supportedLaF = new SupportedLaF(name, laf);
书上找了,网上找了,静态内部类用 new 初始化 这是个什么意思。。
求解。。
里面有个下面类
public class FileChooserDemo extends JPanel implements ActionListener {
..... //省略
private static SupportedLaF nimbusLaF;
private static class SupportedLaF
{ private final String name;
private final LookAndFeel laf; SupportedLaF(String name, LookAndFeel laf) {
this.name = name;
this.laf = laf;
} @Override
public String toString() {
return name;
}
}
....//省略
}
SupportedLaF supportedLaF = new SupportedLaF(name, laf);
书上找了,网上找了,静态内部类用 new 初始化 这是个什么意思。。
求解。。
这样静态内部类就可以理解了,因为这个类没有必要单独存放一个文件,它一般来说只被所在外部类使用。并且它可以直接被用 外部类名+内部类名 获得。 以下举例说明怎么使用:
Student类有个叫School的内部类(非静态)
Student stu = new Student();
stu.School sch = new stu.School();
sch就是School的一个对象。 假如School是内部静态类:
Student.School sch = new Student.School();