zoukankan      html  css  js  c++  java
  • java面向对象之匿名对象

    匿名对象概念

         没有引用类型变量指向的对象称作为匿名对象。

    匿名对象有什么好处:

       1、可以简化书写

       2、可以快速释放内存

    匿名对象的使用场景:

       1. 如果一个对象需要调用一个方法一次的时候,而调用完这个方法之后,该对象就不再使用了,这时候可以使用匿名对象

       2. 可以作为实参调用一个函数。

    举例:

    class Student{

      int num;               //定义一个成员变量:学号

      String name;       //定义一个成员变量:名字

      int score;

      public void study(){
        System.out.println("好好学习,为将来称为高帅富做准备!");
      }
    }

    class Teacher{

      int num;

      String name;

      String office;

      public void teach(Student s){

        if(s.score<60){

          System.out.println("放学留下补课");

        }else{

          System.out.println("成绩不错,加油!!");

        }

    }

    }

    class School{  

           public static void main(String[] args) 

      {

        //场景一:如果一个对象需要调用一个方法一次的时候,而调用完这个方法之后,该对象就不再使用了,这时候可以使用匿名对象
        //创建一个学生对象,正常创建对象写法
        Student s = new Student();

        s.name = "狗娃"

         //匿名对象写法
        new Student().name = "狗娃";     

        System.out.println(new Student() == new Student()) ; // "==" 用于引用类型变量时,比较的是内存地址。判断两个 对象是否为同一个对象

        //场景2:可以作为实参调用一个函数

        //正常创建对象写法
        Student s = new Student();

        Teacher t = new Teacher();

        t.teach(c)

        //使用匿名对象调用

        t.teach(new Student());

      }

    —————————————————————————————————————————————————————————————————————————————————————————————————————————————— 保持学习的劲头
  • 相关阅读:
    C++ 函数返回局部变量的std::move()的适用场景(转)
    Android 内存泄漏总结(转)
    android JNI调用(Android Studio 3.0.1)(转)
    Linux c —— opendir函数和readdir函数内涵及用法(转)
    理解Android编译命令(转)
    Linux内存管理(转)
    Android内存分析命令(转)
    关于跳板机穿透的文章 (未验证)
    windows下 git配置ssh
    转: Git远程操作详解 (阮一峰)
  • 原文地址:https://www.cnblogs.com/qkblogs/p/12608903.html
Copyright © 2011-2022 走看看