Java 之 匿名对象


一、匿名对象

  创建对象时,只有创建对象的语句,却没有把对象地址赋值给某个变量。

  虽然是创建对象的简化写法,但是应用场景非常有限。

  匿名对象:没有变量名的对象。

  语法格式

new 类名(参数列表);

二、应用场景

  1、创建匿名对象直接调用方法,没有变量名

    Demo:

new Scanner(System.in);

  2、一旦调用两次方法,就是创建了两个对象,造成浪费。

    Demo:

new Scanner(System.in).nextInt();
new Scanner(System.in).nextInt();

    注意:一个匿名对象,只能使用一次。

  3、匿名对象可以作为方法的参数和返回值

    • 作为参数
 1 class Test {  2 public static void main(String[] args) {  3         // 普通方式
 4         Scanner sc = new Scanner(System.in);  5  input(sc);  6         //匿名对象作为方法接收的参数
 7         input(new Scanner(System.in));  8  }  9     public static void input(Scanner sc){ 10  System.out.println(sc); 11  } 12 }    
    •    作为返回值
 1 class Test2 {  2     public static void main(String[] args) {  3         // 普通方式
 4         Scanner sc = getScanner();  5  }  6     public static Scanner getScanner(){  7         //普通方式  8         //Scanner sc = new Scanner(System.in);  9         //return sc; 10         //匿名对象作为方法返回值
11         return new Scanner(System.in); 12  } 13 }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM