老师,为什么要在这重新new一下对象,一开始传入对象不行吗
来源:3-8 制作CopyUtil封装BeanUtils

慕粉1230329569
2021-12-09
写回答
2回答
-
这位同学的想法应该是想这样,可以自己尝试改下:
EbookResponse ebookResp = CopyUtil.copy(ebook, new EbookResponse()
);
但是这种写法,copyList就不支持了。
00 -
Rampling
2021-12-10
最初的版本,就是传入一个new好的对象呀。
你是说这样吧?
EbookResponse resp = new EbookResponse();
你看你要复制的对象类是EbookResponse,假如有个需求让你复制给一个其他的类,比如JavaEbookReponse。
你不是又要重新new一次吗?假如有五个不同的类呢?你不是要new五次?
那我不如干脆直接传入一个Class范型对象,指定好结果类。
我要复制的时候,直接传入这个类的字节码通过反射机制实例化它不是更方便嘛。
EbookResponse ebookResp = CopyUtil.copy(ebook, EbookResponse.class);
这个和你学的spring ioc思想差不多吧,即你想用啥就写啥。
当然你要是嫌麻烦也可以new多个不同的类。
212021-12-10
相似问题