首页 > 编程笔记 > Java笔记 阅读:6

Java匿名对象的用法(附带实例)

回想 Java 对象的创建过程,我们通过“new 类名()”调用不同的构造方法来创建对象,创建出的对象都对应一个对象名。比如:
Person person = new Person();
我们创建一个名为 person 的对象,然后就可以通过对象名来使用对象。

对于某个对象,如果只需使用一次,则可以使用匿名对象,这样能简化程序的编写。所谓匿名对象,就是省略对象名,创建对象的时候同时调用方法。

例如:
public class NamelessObjectTest {
    public static void main(String[] args) {
        new Person("小明", 6).introduceMyself();
    }
}
      
class Person {
    String name;
    int age;

    Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    void introduceMyself() {
        System.out.println("my name is " + name + ", " + age + " years old.");
    }
}
上面就是一个匿名对象的示例,“new Person("小明", 6).introduceMyself();”没有对象名,我们只使用一次 introduceMyself() 方法。


图 1 有名称的对象与匿名对象

如上图所示,有名称的对象就像是给它定义了一个引用,通过这个引用名称就能找到这个对象。而无名称的对象则不存在引用,我们只能在创建它的同时去使用它,后面再也无法找到这个对象了,而且因为没有引用会使它被 JVM 回收。

相关文章