当前位置: 首页 > 面试题库 >

new一个对象的过程和clone一个对象的区别?

云鸿达
2023-03-14
本文向大家介绍new一个对象的过程和clone一个对象的区别?相关面试题,主要包含被问及new一个对象的过程和clone一个对象的区别?时的应答技巧和注意事项,需要的朋友参考一下

new 操作符的本意是分配内存。程序执行到 new 操作符时,首先去看 new 操作符后面的类型,因为知道了类型,才能知道要分配多大的内存空间。分配完内存之后,再调用构造函数,填充对象的各个域,这一步叫做对象的初始化,构造方法返回后,一个对象创建完毕,可以把他的引用(地址)发布到外部,在外部就可以使用这个引用操纵这个对象。

clone 在第一步是和 new 相似的,都是分配内存,调用 clone 方法时,分配的内存和原对象(即调用 clone 方法的对象)相同,然后再使用原对象中对应的各个域,填充新对象的域,填充完成之后,clone方法返回,一个新的相同的对象被创建,同样可以把这个新对象的引用发布到外部。

 类似资料:
  • 本文向大家介绍java new一个对象的过程实例解析,包括了java new一个对象的过程实例解析的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了java new一个对象的过程实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 java在new一个对象的时候,会先查看对象所属的类有没有被加载到内存,如果没有的话,就会先通过类的全限

  • 通过聚合和分组将一个对象映射到另一个对象 ToQ的输出应为 我尝试使用分组函数,但它生成了HashMap但不确定如何转换为对象。

  • 我对RxJS很陌生,所以如果这个问题已经得到回答,我提前道歉。 我有一个Angular 2应用程序,在其中一个组件中有一个普通对象。我将UI绑定到这个对象。我想做的是能够捕获对这个对象的所有更改,无论它们来自代码还是来自用户更改其中一个字段。 我正在查看可观察对象,但似乎只有通过Emit方法推送新对象时,订阅者才能接收通知。例如,在属性绑定到输入字段的情况下,这将如何工作? 有更好的方法吗? 这是

  • 为什么我不能这样做? 我得到: 致命错误:常量表达式包含无效操作 这有什么办法吗?

  • 我举了一个例子: 如何设置lang1.name?当我这样做时,它不起作用: 我是新来的,我不太明白

  • 请访问 MSDN Online 上的 Office 开发人员中心获取最新的 Microsoft Office 开发信息,包括新技术文章、下载、范例、产品新闻等更多内容。 下表列出了 Microsoft Office 中添加到 Visual Basic 的对象。对象FileDialog FileDialogFilter FileDialogFilters FileDialogSelectedItem