1. 匿名對象的創建
匿名對象是指在創建對象時,只有創建對象的語句,卻沒有把對象地址賦值給某個變量
如:
創建一個普通對象
Person P = new Person();
創建一個匿名對象
new Person();
2.匿名對象的特點
- 創建匿名對象可以直接使用,沒有變量名
new Person().work(); //work 方法被一個沒有名字的 Person 對象調用了 - 匿名對象在沒有指定其引用變量時,只能使用一次
new Person().work(); //創建一個匿名對象,調用 work 方法
new Person().work(); //想再次調用 work 方法,要重新創建一個匿名對象 - 匿名對象可以作爲方法接收的參數,方法返回值使用
舉個栗子:
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());
}
}