测试案例
public class Demo01Anonymous {
public static void main(String[] args) {
//左边的one就是对象的名字
Person one = new Person();
one.name = "Martin";
one.showName();
//匿名对象
new Person().name = "Jesson";
new Person().showName();
}
}
public class Person {
String name;
public void showName(){
System.out.println(name);
}
}
原以为打印的结果是一样的,但是运行结果如下

注意事项:匿名对象只能使用唯一的一次,下次再用不得不在创建一个新对象。
使用建议:如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。
匿名对象的使用
//前题是使用一次
//普通使用方法
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
//匿名对象的使用方式
int num = new Scanner(System.in).nextInt();
System.out.println("输入的是:"+num);
匿名对象的参数传递
//使用一般写法传入参数
Scanner sc2 = new Scanner(System.in);
methodParam(sc2);
//匿名对象传入参数的使用方法
methodParam(new Scanner(System.in));
public static void methodParam(Scanner sc){
int m = sc.nextInt();
System.out.println("传入的输入参数是:"+m);
}
匿名函数的返回值写法
public static Scanner methodReturn(){
//一般函数返回值的写法
Scanner sc = new Scanner(System.in);
return sc;
}
public static Scanner methodReturn(){
//匿名函数返回值的写法
return new Scanner(System.in);
}
本文深入探讨Java中匿名对象的使用场景及注意事项,包括一次性使用的特性、如何在参数传递和返回值中应用,以及与常规对象的对比。通过具体示例,帮助读者理解匿名对象在提高代码效率和简洁性方面的作用。
276

被折叠的 条评论
为什么被折叠?



