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 回收。
ICP备案:
公安联网备案: