java 这种格式是什么意思?

来源:百度知道 编辑:UC知道 时间:2024/06/09 00:08:44
有时候会看到这种格式去创建一个对象

Test t = new Test(){
void method(){

}
};
是不是直接创建抽象类对象的,比如Test是一个抽象类
各位达人,能不能说的具体些啊

对..就是这样的...这样的话..你必须实现 抽象类 Test 中的抽象方法...

呵呵....

{
void method(){

}
};
匿名内部类,是Test的子类(Test是类)或实现类(Test是接口)

Test t = new Test(){
void method(){

}
};
实际上是创建了Test的子类或实现类的对象,然后转型回Test

匿名类,java的一种写法,为了缩短代码行,但是 java core 书中,不推荐这样的写法

这种格式是创建一个接口(或抽象类)的实现对象。
通常用在Template模式当中。