有没有人见过java创建对象的奇怪语法
public class TTT{
public void static main(String[] args){
//奇怪的创建对象的方法,直接就把对象中的属性值都赋好了
Test test = new Test(){
{
setTime(1000);
setDate(20080228);
};//这个分号是可加可不加的
};//结尾是一分号,这个分号不加会报错。我把它理解为一句语句的结束
}
}
class Test{
private int time;
private String date;
public setTime(int time){
this.time = time;
}
public setDate(String date){
this.date = date;
}
}
想请问大家有没有看到过这个创建对象的写法,
最好能分析一下,这个语法的关键点,以及它与常用创建的方法的优缺点。
这个在google中不知道怎么去搜索,哈哈
请不吝赐教,谢谢。