java -> 匿名对象

匿名对象的概念

  匿名对象是指创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量

  如:已经存在的类:

  public class Person{

       public void eat(){

           System.out.println();

    }

  }

创建一个普通对象

Person p = new Person();

创建一个匿名对象

new Person();

匿名对象的特点

  创建匿名对象直接使用,没有变量名

new Person().eat()  //eat方法被一个没有名字的Person对象调用了。

  匿名对象在没有指定其引用变量时,只能使用一次

  new Person().eat(); 创建一个匿名对象,调用eat方法

  new Person().eat(); 想再次调用eat方法,重新创建了一个匿名对象

        

  匿名对象可以作为方法接收的参数、方法返回值使用

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());

    }

}

猜你喜欢

转载自www.cnblogs.com/miaoxingren/p/9380545.html