有没有办法在Java中初始化匿名内部类?
例如:
new AbstractAction() {
actionPerformed(ActionEvent event) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法在类声明中的某处使用putValue方法?
Sea*_*oyd 36
使用初始化程序块:
new AbstractAction() {
{
// do stuff here
}
public void actionPerformed(ActionEvent event) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
通常,您可以使用代码在构造函数中初始化实例变量.使用构造函数初始化实例变量有两种选择:初始化块和最终方法.实例变量的初始化程序块看起来就像静态初始化程序块,但没有static关键字:
{
// whatever code is needed for initialization goes here
}
Run Code Online (Sandbox Code Playgroud)
Java编译器将初始化程序块复制到每个构造函数中.因此,该方法可用于在多个构造函数之间共享代码块.
资源:
目前还不是很清楚你的意思,但你可以使用初始化程序块在构建时执行代码:
new AbstractAction() {
{
// This code is called on construction
}
@Override public void actionPerformed(ActionEvent event) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
您可以使用实例初始化部分:
new AbstractAction() {
{
//initialization code goes here
}
actionPerformed(ActionEvent event) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10287 次 |
| 最近记录: |