mre*_*mre 3 java swing jcomponent extend
将类专用于特定的Swing组件时,extend对该特定组件更好,还是在内部构造并提供引用?
public class Foo extends JComponent{
}
Run Code Online (Sandbox Code Playgroud)
要么
public class Foo{
public JComponent getComponent(){
}
}
Run Code Online (Sandbox Code Playgroud)
编辑
这就是我所说的奉献精神
public class Foo{
private static Foo INSTANCE;
public static Foo getInstance(){
if(INSTANCE == null){
INSTANCE = new Foo();
}
}
public void createAndShowComponent(){
//do stuff
}
}
Run Code Online (Sandbox Code Playgroud)
在里面createAndShowComponent(),我创建了一个JComponent包含所有组件及其各自的侦听器,而不暴露我刚创建的组件的内部.
+1超过扩展的组合.它使API更加清晰,因为您只公开了对新组件重要的方法