猫有猫的方向 2021-10-06 04:25 采纳率: 85.7%
浏览 21
已结题

java装饰者模式的调用问题

  第一个普通的实现类,可以调用!
 而第二个升级的实现类,不可以调用(除非在升级的实现类里写上一个不带参数的空方法才可以new,为什么? 调用的时候(升级的实现类)也会报错,但是更改的内容可以显示出来!)

img

img

  • 写回答

1条回答 默认 最新

  • 剽悍一小兔 前端领域优质创作者 2021-10-06 08:48
    关注

    你好,因为第二个升级的实现类没有默认的空构造方法,所以不能直接new。
    每一个类都有构造方法,写法是这样的。

    public Customer(){
        
    }
    
    

    这是空的构造方法,你不写也没事,就算不写也会有这么一个方法。构造方法的作用就是在你new对象的时候,直接调用。

    记住一个口诀:

    1.类名打括号 = 调用构造方法,左边一定会有个new。

    2.方法名打括号 = 调用这个方法,默认传入一个this(没有static的情况)

    3.方法名打括号 = 调用这个方法,不传入this(有static的情况)

    更多java基础知识,可以访问我的自学网站:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月14日
  • 已采纳回答 10月6日
  • 创建了问题 10月6日

悬赏问题

  • ¥20 关于php中URL传递GET全局变量的问题
  • ¥15 怎么改成循环输入删除(语言-c语言)
  • ¥15 安卓C读取/dev/fastpipe屏幕像素数据
  • ¥15 pyqt5tools安装失败
  • ¥15 mmdetection
  • ¥15 nginx代理报502的错误
  • ¥100 当AWR1843发送完设置的固定帧后,如何使其再发送第一次的帧
  • ¥15 图示五个参数的模型校正是用什么方法做出来的。如何建立其他模型
  • ¥100 描述一下元器件的基本功能,pcba板的基本原理
  • ¥15 STM32无法向设备写入固件