提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
一、匿名对象是什么?
1.匿名对象是什么?
一般情况下当我们创建一个对象的时候总是要给它起一个名字,但是在有些情况下这些对象可以省略,那么没有名字的对象就叫做匿名对象;匿名对象就是只有右边的对象,没有左边的名字和赋值运算符;
2.格式:
new 类名称();
3.注意:
匿名对象只能使用一次,下次使用再用不可以再创建,每一次new都是创建一个新的匿名对象;所以使用建议:如果确定一个对象只需要使用唯一的一次,就可以用匿名对象;
二、匿名对象的应用
一般情况下的创建标准格式:
类名称 对象名=new 类名称();创建一个类并引用。创建一个类:
package cn.demo01;
public class person {
String name;
public void showname(){
System.out.println("我叫:"+name);
}
}
一般与匿名引用对比:
package cn.demo01;
public class nobody {
public static void main(String[] args) {
person one=new person();
one.name="张毅";
one.showname();
//使用匿名对象
new person().name="淅淅同学";//新建一个匿名对象,对其中的name进行赋值
new person().showname();//输出null
}
}
对比运行结果图:
匿名对象作为参数和返回值:
package cn.demo01;
import java.util.Scanner;
public class nobody01 {
public static void main(String[] args) {
//普通使用方式
Scanner sc =new Scanner(System.in);
int num=sc.nextInt();
//匿名对象的使用方式
int num1 =new Scanner(System.in).nextInt();
System.out.println("输入的是:"+num);
System.out.println("输入的是:"+num1);
//使用 +匿名对象来进行传参
method(new Scanner(System.in));
//使用匿名对象作为返回值
Scanner sc1= methodreturn();
int num2=sc.nextInt();
System.out.println("输入的是:"+num2);
}
public static void method(Scanner sc){
int num =sc.nextInt();
System.out.println("输入的是:"+num);
}
public static Scanner methodreturn(){
return new Scanner(System.in);
}
}