匿名类即无名类,使用时直接用匿名类生成一个对象。
匿名类实际上是某一个类的子类,如果一个类在程序中只使用一次,则定义成匿名类比较合适。
例子:使用匿名类描述一架运行飞机和一艘航行的轮船
class 交通工具{
public void running(){
//交通工具运行
System.out.println("一个交通工具在运行!");
}
}
public class Example21{
public static void main(String[] args) {
//声明一个交通工具类的对象aPlane,实际是一架飞机
交通工具 aPlane;
//实例化,但是没有定义飞机类,所以定义一个匿名飞机类
aPlane=new 交通工具(); //匿名飞机类
//从上一行开始直到第6行是一条语句,分多行写
//从第一行至第6行是类体
{ //1
public void running()
{ //3
System.out.println("一架飞机正在空中飞行!"); //4
} //5
}; //6
//可以写成一行,但是不提倡
交通工具 aShip=new 交通工具(); //下一行可以接在此处写
{public void running(){System.out.println("一艘轮船正在水中航行!");}};
aPlane.running(); //飞机飞行
aShip.running(); //轮船航行
}
}