您的位置:首页 > 编程语言 > Java开发

java编程思想笔记--内部类部分五

2013-08-02 20:45 405 查看
1.匿名内部类:匿名内部类的结构比较奇特,如下:

package test;
public class Parcle{
public Wrapping getWrapping(int x){
return new Wrapping(x){
private int y;
public int value(){
return super.value();
}
};
}
}
class Wrapping{
int x;
public Wrapping(int x){
this.x=x;
}
public int value(){
return x;
}
}


其中的getWrapping方法中竟然会有

return new Wrapping(x){
private int y;
public int value(){
return super.value();
}
};
这种奇特的结构。其实,这个意思是这样的:这里并不是定义了一个Wrapping类,而是定义了一个继承自Wrapping的子类,相当于这样:

package test;
public class Parcle{
class myWrapping extends Wrapping{
private int y;
public myWrapping(int y) {
super(y);
this.y=y;
}
public int value(){
return super.value();
}
}
public Wrapping getWrapping(int x){
return new myWrapping(10);
}
}
class Wrapping{
int x;
public Wrapping(int x){
this.x=x;
}
public int value(){
return x;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: