java为什么匿名内部类不能定义构造器?
interfaceProduct{publicdoublegetPrice();publicStringgetName();}publicclassTest{public...
interface Product
{
public double getPrice() ;
public String getName() ;
}
public class Test
{
public void test(Product p)
{
System.out.println("购买了一个" + p.getName() + " , 花掉了" + p.getPrice());
}
public static void main(String args[])
{
Test ta = new Test() ;
ta.test(new Product()
{
int i ;
Product(int i) //为什么匿名内部类不能定义构造器?
{
this.i = i ;
}
public double getPrice()
{
return 12;
}
public String getName()
{
return "先科";
}
});
}
} 展开
{
public double getPrice() ;
public String getName() ;
}
public class Test
{
public void test(Product p)
{
System.out.println("购买了一个" + p.getName() + " , 花掉了" + p.getPrice());
}
public static void main(String args[])
{
Test ta = new Test() ;
ta.test(new Product()
{
int i ;
Product(int i) //为什么匿名内部类不能定义构造器?
{
this.i = i ;
}
public double getPrice()
{
return 12;
}
public String getName()
{
return "先科";
}
});
}
} 展开
3个回答
展开全部
这个匿名内部类还没有试过,不过可以理解,匿名内部类一般只使用在代码片段中,使用后就被gc回收。如果要多次使用,即需要后续创建对象才会提供构造方法。所以。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
匿名内部类不能定义构造器就因为他没有类名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询