Java匿名对象的用法(附带实例)
回想 Java 对象的创建过程,我们通过“new 类名()”调用不同的构造方法来创建对象,创建出的对象都对应一个对象名。比如:
对于某个对象,如果只需使用一次,则可以使用匿名对象,这样能简化程序的编写。所谓匿名对象,就是省略对象名,创建对象的时候同时调用方法。
例如:

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