00052_匿名对象
1、匿名对象的概念
匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。
代码演示:
1 //已经存在的类 2 public class Person{ 3 public void eat(){ 4 System.out.println(); 5 } 6 }
创建一个普通对象:
Person p = new Person();
创建一个匿名对象:
new Person();
2、匿名对象的特点
(1)创建匿名对象直接使用,没有变量名;
new Person().eat() //eat方法被一个没有名字的Person对象调用了
(2)匿名对象在没有指定其引用变量时,只能使用一次;
new Person().eat(); 创建一个匿名对象,调用eat方法 new Person().eat(); 想再次调用eat方法,重新创建了一个匿名对象
(3)匿名对象可以作为方法接收的参数、方法返回值使用;
1 class Demo { 2 public static Person getPerson(){ 3 //普通方式 4 //Person p = new Person(); 5 //return p; 6 7 //匿名对象作为方法返回值 8 return new Person(); 9 } 10 11 public static void method(Person p){} 12 } 13 14 class Test { 15 public static void main(String[] args) { 16 //调用getPerson方法,得到一个Person对象 17 Person person = Demo.getPerson(); 18 19 //调用method方法 20 Demo.method(person); 21 //匿名对象作为方法接收的参数 22 Demo.method(new Person()); 23 } 24 }

浙公网安备 33010602011771号