老师,为什么要在这重新new一下对象,一开始传入对象不行吗

来源:3-8 制作CopyUtil封装BeanUtils

慕粉1230329569

2021-12-09

图片描述

写回答

2回答

甲蛙

2021-12-10

这位同学的想法应该是想这样,可以自己尝试改下:EbookResponse ebookResp = CopyUtil.copy(ebook, new EbookResponse());

但是这种写法,copyList就不支持了。

0
0

Rampling

2021-12-10

最初的版本,就是传入一个new好的对象呀。

你是说这样吧?

EbookResponse resp = new EbookResponse();

你看你要复制的对象类是EbookResponse,假如有个需求让你复制给一个其他的类,比如JavaEbookReponse。

你不是又要重新new一次吗?假如有五个不同的类呢?你不是要new五次?

那我不如干脆直接传入一个Class范型对象,指定好结果类。

我要复制的时候,直接传入这个类的字节码通过反射机制实例化它不是更方便嘛。

EbookResponse ebookResp = CopyUtil.copy(ebook, EbookResponse.class);

这个和你学的spring ioc思想差不多吧,即你想用啥就写啥。

当然你要是嫌麻烦也可以new多个不同的类。



2
1
慕粉1230329569
非常感谢
2021-12-10
共1条回复

Spring Boot+Vue3前后端分离,实战wiki知识库系统

一课掌握前后端最火框架,更有职场竞争力

2524 学习 · 1671 问题

查看课程