java面向对象-匿名对象

一、匿名对象的特点 

创建一个普通对象:
Person p = new Person();

创建一个匿名对象:
new Person();                     //这种对象只能使用一次,不能使用第二次。

二、匿名对象的使用 
1.匿名对象,没有引用对象,只能使用一次。如果一个事只做一次,可以使用匿名对象。[例1]
2.匿名对象可以当作参数传递。[例2]
3.匿名对象可以当作方法的返回值。[例3]

例1:
//Person.java
package cn.itcast.demo01;

public class Person{
      public void eat(){
            System.out.println("eating...");
      }
}

//Test.java
package cn.itcast.demo01;

public class Test{
      public static void main(String[] args){
            new Person().eat();                         //eating...  匿名对象。     
      }
}

例2:
//Person.java
package cn.itcast.demo01;

public class Person{
      public void eat(){
            System.out.println("eating...");
      }
}

//Test.java
package cn.itcast.demo01;

public class Test{
      public static void main(String[] args){
            fun(new Person());                         //匿名对象当作参数传递。相当于:Person p = new Person(); fun(p); 这两句。
      }

      public static void fun(Person p){
           p.eat();
      }
}


例3:
//Person.java
package cn.itcast.demo01;

public class Person{
      public void eat(){
            System.out.println("eating...");
      }
}

//Test.java
package cn.itcast.demo01;

public class Test{
      public static void main(String[] args){
            Person p = fun();                           //匿名对象当作参数传递。相当于:Person p = new Person();  这一句。
            p.eat(); 
     }

      public static Person fun(){
           return new Person();                       //匿名对象当作方法的返回值。相当于:Person p = new Person(); return p;这两句。
      }
}




猜你喜欢

转载自blog.csdn.net/pengchengliu/article/details/80556800