一、匿名对象
创建对象的标准格式
类名称 对象名 =new 类名称()
匿名对象就是只有右边的对象,没有左边的名字和赋值运算符
格式:
new 类名称()
注意事项:匿名对象只能使用唯一的一次,下次再用不得不创建一个新对象
使用建议:如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。
代码示例:
package Day07;
/*
* 创建对象的标准格式
* 类名称 对象名 =new 类名称()
* 匿名对象就是只有右边的对象,没有左边的名字和赋值运算符
* 格式:
* new 类名称()
* 注意事项:匿名对象只能使用唯一的一次,下次再用不得不创建一个新对象
* 使用建议:如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。
*/
public class Demo01Anonymous {
public static void main(String[] args) {
//左边的one就是对象的名字
Person one=new Person();
one.name="高圆圆";
one.showName(); //我叫:高圆圆
//匿名对象
new Person().name="赵又廷";
new Person().showName();//我叫:null,这里不输出赵又廷因为这个语句通过new再次创建了一个新的对象
}
}
输出结果:
二、匿名对象作为方法的参数和返回值
package Day07;
import java.util.Scanner;
public class Demo02Anonymous {
public static void main(String[] args) {
/*普通使用方式
Scanner sc= new Scanner(System.in);
int num=sc.nextInt();
/*
* 匿名对象方式
*/
int num= new Scanner(System.in).nextInt();
System.out.println("输出是:"+num);
}
}
用匿名对象作为方法的参数
package Day07;
import java.util.Scanner;
public class Demo02Anonymous {
public static void main(String[] args) {
/*使用一般方法传入参数
Scanner sc= new Scanner(System.in);
methodParam(sc);
/*
* 匿名对象方式来进行传参
*/
methodParam(new Scanner(System.in));
}
public static void methodParam(Scanner sc) {
int num= sc.nextInt();
System.out.println("输出是:"+num);
}
}
将匿名对象作为返回值
package Day07;
import java.util.Scanner;
public class Demo02Anonymous {
public static void main(String[] args) {
/*使用一般方法传入参数
Scanner sc= new Scanner(System.in);
methodParam(sc);
/*
* 匿名对象方式来进行传参
*/
//methodParam(new Scanner(System.in));
//匿名对象作为返回值
Scanner sc= methodReturn();
int num= sc.nextInt();
System.out.println("输出是:"+num);
}
//匿名对象返回函数
public static Scanner methodReturn() {
return new Scanner(System.in);
}
}