java se 匿名对象

2020-01-06  本文已影响0人  起名字真难难难

普通情况的创建对象

Scanner sc=new Scanner(System.in);
int num=sc.nextInt();

匿名对象的创建对象:只有右边new出来的对象,没有左边的名字和赋值运算符

int num=new Scanner(System.in).nextInt();
new Person().name="于松江"

注意:匿名对象只能使用唯一一次,下次使用的时候上次赋的值用不了
下次使用不得不再创建一个对象

public static void main(String[] args) {
        Person p=new Person();
        p.name="于松江";
        p.sayHello();
        System.out.println("==================");
        new Person().name="于小胖";
        new Person().sayHello();
    }
运行结果

创建匿名对象时,并没有把“于小胖”输出出来,第一个对象的赋值没有使用到第二个调用当中。

作为参数与返回值

普通创建对象

Scanner sc=new Scanner(System.in);
        int num=sc.nextInt();
        System.out.println(num);

匿名创建对象

int num1=new Scanner(System.in).nextInt();
        System.out.println("输出的数字"+num1);

一般写法传参

public static void main(String[] args) {
 Scanner sc=new Scanner(System.in);//在主函数里创建新对象
        methodParam(sc);                      //调用方法,进行传参
    }
public static void methodParam(Scanner sc){       
       int num=sc.nextInt();                                      //方法的作用是打印参数
        System.out.println("第二个输出的数字是"+num);
    }

匿名写法传参

public static void main(String[] args) {
methodParam(new Scanner(System.in));
  }

直接new,直接调用!
一般写法返回参数

public static void main(String[] args) {
int num4=methodReturn();
        System.out.println("输出的第三个数字是"+num4);
    }
 public static int methodReturn(){
        Scanner sc1=new Scanner(System.in);  //从键盘中敲入数字,然后再传给外界,外界打印出来
        int num3=sc1.nextInt();
        return num3;
    }

匿名方法传参

public static int methodReturn(){
        return new Scanner(System.in).nextInt();
    }
上一篇下一篇

猜你喜欢

热点阅读