ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

119/120匿名对象的说明和对像作为方法的参数和返回值

2022-07-04 13:37:07  阅读:178  来源: 互联网

标签:Scanner System 120 nextInt new sc 返回值 119 public


匿名对象 概念 创建对象时,只有创建对象的语句,却没有把对象地址值赋值给某个变量。虽然是创建对象的简化写法,但是应用 场景非常有限。 匿名对象 :没有变量名的对象。 格式: day04类
package demox.demopro;
public class day04 {
    String name;
    public void showName(){
        System.out.println("我叫"+name);
    }
}

day04pro

package demox.demopro;

/*
创建对象的标准格式:
类名称对象名= neww类名称();
匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。new类名称(;

注意事项:匿名对象   只能使用唯一的一次,下次再用不得不在创建一个新对象,
使用建议:如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象
 */

public class day04pro {
    public static void main(String[] args) {
        day04 one = new day04();
        one.name ="高圆圆";
        one.showName();
        System.out.println("********************");


        new day04().name = "赵又廷";
        new day04().showName();
    }
}

 

new 类名(参数列表);
举例:
new Scanner(System.in);
应用场景 1. 创建匿名对象直接调用方法,没有变量名。
new Scanner(System.in).nextInt();
2. 一旦调用两次方法,就是创建了两个对象,造成浪费,请看如下代码。
new Scanner(System.in).nextInt(); 
new Scanner(System.in).nextInt();
小贴士:一个匿名对象,只能使用一次。 3. 匿名对象可以作为方法的参数和返回值 作为参数:
class Test {
 public static void main(String[] args) {
 // 普通方式 
Scanner sc = new Scanner(System.in); 
input(sc); 
//匿名对象作为方法接收的参数 
input(new Scanner(System.in));
 }
public static void input(Scanner sc){
 System.out.println(sc); 
        }
 }
作为返回值
class Test2 {
 public static void main(String[] args) {
 // 普通方式
 Scanner sc = getScanner(); 
}
public static Scanner getScanner(){ 
//普通方式 /
/Scanner sc = new Scanner(System.in);//
return sc;
 //匿名对象作为方法返回值 
return new Scanner(System.in);
         }
 }    
package demox.demopro;

import java.util.Scanner;

public class day05 {
    public static void main(String[] args) {
//            //普通使用方式
//        Scanner scanner = new Scanner(System.in);
//        int nextInt = scanner.nextInt();
//            //匿名对象方式
//        int num = new Scanner(System.in).nextInt();
//        System.out.println("输入的是:"+num);
//        使用一般写法
//        Scanner scanner = new Scanner(System.in);
//        methodParam(sc);
//            methodParam(new Scanner(System.in));
        Scanner  sc = methodReturn();
        int nextInt = sc.nextInt();
        System.out.println("输入的是"+nextInt);
    }
    public static void methodParam(Scanner sc){
        int nextInt = sc.nextInt();
        System.out.println("输入的是"+nextInt);
    }
    public static Scanner methodReturn(){
//        Scanner scanner = new Scanner(System.in);
//        return scanner;
        return new Scanner(System.in);
    }
}

标签:Scanner,System,120,nextInt,new,sc,返回值,119,public
来源: https://www.cnblogs.com/agzq/p/16442615.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有