匿名对象:没有名字的对象,就是直接new出来
应用的场景A:调用方法,仅仅只调用一次的时候(调用多次的时候不适合) 好处就是调用完毕就是垃圾,被垃圾回收器回收
应用场景B:匿名对象可以做实际参数传递
我们调用对象都是通过类名来调用(带名字调用)
例如:
class shiyi{
public void show() {
System.out.println("调用了show方法");
}
}
public class test {
public static void main(String[] args) {
//带名字的调用
shiyi sy = new shiyi();
sy.show();
}
}
而匿名对象是这样的
例如
class shiyi{
public void show() {
System.out.println("调用了show方法");
}
}
public class test {
public static void main(String[] args) {
//带名字的调用
//shiyi sy = new shiyi();
//sy.show();
//匿名对象
new shiyi();
}
}
直接new出一个对象,而他调用方法是这样调用的
class shiyi{
public void show() {
System.out.println("调用了show方法");
}
}
public class test {
public static void main(String[] args) {
//带名字的调用
//shiyi sy = new shiyi();
//sy.show();
//匿名对象
new shiyi();
//匿名对象调用方法
new shiyi().show();
}
}
而为什么仅仅只调用一次的时候使用呢?,请看下面截图
为什么说匿名对象可以作为实际参数传递
我们平常所用的是这样的
而匿名对象:
改进版