匿名對象:
即沒有名字的對象。
public class Test {
public static void main(String[] args) {
/*Car c1 = new Car(); //建立有名字的對象
c1.run();
c1.run();
new Car().run(); //匿名對象調用方法
new Car().run(); //匿名對象隻适合對方法的一次調用,因為調用多次就會産生多個對象,不如用有名字的對象
//匿名對象是否可以調用屬性并指派?有什麼意義?
/*
匿名對象可以調用屬性,但是沒有意義,因為調用後就變成垃圾
如果需要指派還是用有名字對象
*/
new Car().color = "red";
new Car().num = 8;
new Car().run();
}
}
class Car {
String color; //顔色
int num; //輪胎數
public void run() {
System.out.println(color + "..." + num);
}
}
匿名對象的使用方法:
1. 當對象對方法僅進行一次調用的時候,就可以簡化成匿名對象。
如一個 對象需要進行調用方法2次,用匿名對象的
new Car().run()
這是2個對象分别調用了run(),不是一個對象調用了多方法。
2. 匿名對象可以作為實際參數進行傳遞。
public static void show(Car c)
{
//......
}
show(new Car());
記憶體分析:
new Car().num =5;
new Car().color = "green";
new Car().run();