java中new一个对象和clone一个对象性能有什么区别

java中new一个对象和clone一个对象性能有什么区别

这篇文章主要介绍了java中new一个对象和clone一个对象性能有什么区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

一个对象通过new创建的过程为:
1、在内存中开辟一块空间;
2、在开辟的内存空间中创建对象;
3、调用对象的构造函数进行初始化对象。

而一个对象通过clone创建的过程为:
1、根据原对象内存大小开辟一块内存空间;
2、复制已有对象,克隆对象中所有属性值。

java中new一个对象和clone一个对象性能有什么区别

  • 相对new来说,clone少了调用构造函数。

    • 需要占用大量连续内存空间的java对象一般称为大对象,比如很长的字符串、数组以及类对象

    • 如果构造函数中存在大量属性初始化或大对象,则使用clone的复制对象的方式性能会好一些。

感谢你能够认真阅读完这篇文章,希望小编分享的“java中new一个对象和clone一个对象性能有什么区别”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

发布于 2022-01-05 23:22:13
收藏
分享
海报
0 条评论
40
上一篇:Java虚拟机HotSpot垃圾收集器是什么 下一篇:JavaWeb面试题有哪些
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码