• Java之匿名对象


    匿名对象的使用

    1.理解:我们创建的对象没有显示的赋给变量名,即为匿名对象

    2.特征:匿名对象只能调用一次

    3.使用:当对象对方法仅进行一次调用的时候,就可以使用匿名对象进行调用

    /**
     * 匿名对象的使用,根据代码来加深以下理解
     */
    public class InstanceTest {
        public static void main(String[] args) {
            //1.一般创建对象,并调用方法,这里调用方法是同一个对象
            Phone phone = new Phone();
            phone.playGame();
            phone.sendEmail();
            System.out.println("--------------1.以上是一般对象---------------------");
    
            //2.创建匿名对象:new Phone() ,并使用匿名对象调用方法,下面new了多次,会产生多个对象
            new Phone().playGame();
            new Phone().sendEmail();
            new Phone().price = 2999;//匿名对象可以调用属性,但是没有意义
            new Phone().showPrice(); //结果0.0,因为与上面赋值2999无关,是两个不同的对象
            System.out.println("-----------------2.以上是匿名对象------------------");
    
            PhoneMall phoneMall = new PhoneMall();
    
            //3.一般对象使用
            phoneMall.show(phone);
            System.out.println("-----------------3.以上是一般对象使用------------------");
    
            //4.匿名对象的具体使用
            phoneMall.show(new Phone());
            System.out.println("-----------------4.以上是匿名对象的具体使用------------------");
        }
    
    
    }
    class PhoneMall{
        public void show(Phone phone){
            phone.sendEmail();
            phone.playGame();
        }
    }
    
    class Phone{
        double price;
        public  void sendEmail(){
            System.out.println("发送邮件");
        }
        public void playGame(){
            System.out.println("玩游戏");
        }
        public void showPrice(){
            System.out.println("手机价格为"+price);
        }
    }

    内存解析:理解匿名对象在内存中如何实现的

  • 相关阅读:
    stark
    MySQL与JDBC
    存储过程/视图/触发器
    MyCat部署运行(Windows环境)与使用步骤详解
    常用单词总结
    表单校验---validation检验
    jQuery简介
    javascript简单介绍
    HTML&&CSS
    消息队列Java的简单实现
  • 原文地址:https://www.cnblogs.com/king2/p/14488912.html
Copyright © 2020-2023  润新知