package com.zhiru;
/*
* 匿名类示例
*/
//创建匿名类的基类
class Wrapping {
private int val;
public Wrapping(int x){
val=x;
}
public int value(){
return val;
}
}
public class Parcel8 {
//在方法体中创建一个没有名字的继承自Wrapping类的匿名类对象.
//通过new表达式返回的引用自动的向上转型为对Wrapping类的引用.
public Wrapping wrapping(int x){
return new Wrapping(x){
public int value(){
return super.value()*47;
}
};//这里的分号表达的是表达式的结束,并不是用来标记这个匿名类的结束的
//ps:要在匿名类中使用一个在其外部定义的对象,那么就要求参数引用时final类型的.
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Parcel8 p=new Parcel8();
Wrapping w=p.wrapping(10);
System.out.println(w.value());
}
}
TIJ学习笔记-匿名类
最新推荐文章于 2022-04-14 23:16:19 发布