mre*_*mre 3 java anonymous-class
这是一个例子
JPanel panel = new JPanel(){
@Override
protected void paintComponent(Graphics g){
// do stuff
}
@Override
public Dimension getPreferredSize(){
// do stuff
}
};
Run Code Online (Sandbox Code Playgroud)
这只是一个匿名内部类的变体,还是完全不同的东西?
小智 5
你可能会对类的匿名性感到困惑,因为乍一看,你看起来像是将面板定义为JPanel的一个实例.但是,这不是你在做什么.相反,您正在定义JPanel 的子类,它是一个新类,并创建面板作为这个新子类的实例.这个新班的名字是什么?好吧,它没有一个,因此这就是它的匿名!
归档时间: |
|
查看次数: |
392 次 |
最近记录: |