匿名内部类

来源:互联网 发布:网络机顶盒看电影软件 编辑:程序博客网 时间:2024/04/29 22:45
匿名内部类
//匿名内部类
interface Product
{
public double getPrice();
public String getName();
}
public class AnnoymousTest
{
public void test(Product p)
{
System.out.println("买了一个+"+p.getName()+",花了+"+p.getPrice());
}
public static void main(String[] args)
{
AnnoymousTest p=new AnnoymousTest();
p.test(new Product()
{
public double getPrice()
{
return 12.5;
}
public String getName()
{
return "剪刀";
}
}
);
p.test(new B());

}
}
class B implements Product
{
public double getPrice()
{
return 1000;
}
public String getName()
{
 return "bicycle";
}
}
匿名内部类必须继承一个接口或者父类,匿名内部类不能是抽象类,所以,在类内必须实现所有父类(接口)的抽象
方法,上面的代码红色的是匿名内部类,它等效于黑色的代码,显然使用匿名内部类更加简洁

原创粉丝点击