1、匿名对象的创建
匿名对象是指在创建对象时,只有创建对象的语句,却没有把对象地址赋值给某个变量,如:对于已存在的Person类
- 创建一个普通对象
Person P = new Person();
- 创建一个匿名对象
new Person();
2、匿名对象的特点
- 创建匿名对象可以直接使用,没有变量名
new Person().work(); //work 方法被一个没有名字的 Person 对象调用了 - 匿名对象在没有指定其引用变量时,只能使用一次
new Person().work(); //创建一个匿名对象,调用 work 方法
new Person().work(); //想再次调用 work 方法,要重新创建一个匿名对象 - 匿名对象可以作为方法接收的参数,方法返回值使用
class Demo {
public static Person getPerson(){
//普通方式
//Person p = new Person();
//return p;
//匿名对象作为方法返回值
return new Person();
}
public static void method(Person p){}
}
class Test {
public static void main(String[] args) {
//调用getPerson方法,得到一个Person对象
Person person = Demo.getPerson();
//调用method方法
Demo.method(person);
//匿名对象作为方法接收的参数
Demo.method(new Person());
}
}