版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/qq_24644517/article/details/82220486
//* A:什么是匿名对象
// * 没有名字的对象
// * B:匿名对象应用场景
// * a:调用方法,仅仅只调用一次的时候。
// * 那么,这种匿名调用有什么好处吗?
// * 节省代码
// * 注意:调用多次的时候,不适合。匿名对象调用完毕就是垃圾。可以被垃圾回收器回收。
// * b:匿名对象可以作为实际参数传递
public class Demo05 {
public static void main(String[]args){
// Car C1 = new Car();//创建有名字的对象,C1
// C1.run();
//
// new Car().run();//匿名对象调用方法,
// new Car().run();//匿名对象只适合对方法的一次调用,因为调用多次就会产生多个对象,不如用有名字的对象
//匿名对象是否可以调用属性并赋值?有什么意义?
//匿名对象可以调用属性,但是没有意义,因为调用后会变成垃圾,如果需要赋值还是用有名字的对象
new Carone().colorone="红色";//当colorone被赋值以后,没有把地址值赋值给任何引用,没有任何引用记住它,变成了垃圾被回收。
new Carone().numone=4;//当numone被赋值以后,没有把地址值赋值给任何引用,没有任何引用记住它,变成了垃圾被回收
new Carone().run();//运行结果为color为null,num为0,因为新创建一个对象没有任何赋值,run方法运行调用的时候直接引用新的地址,默认值给null和0
}
}
class Carone{
String colorone;
int numone;
public void run(){
System.out.println(colorone+"车运行"+numone);
}
}