栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么clone()方法在java.lang.Object中受到保护?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么clone()方法在java.lang.Object中受到保护?

克隆受到保护的事实非常令人怀疑-事实是该clone方法未在Cloneable接口中声明。

它使该方法对于获取数据副本非常无用,因为你不能说:

if(a instanceof Cloneable) {    copy = ((Cloneable) a).clone();}

我认为,Cloneable现在的设计在很大程度上被认为是一个错误(以下引用)。我通常希望能够实现接口的实现,Cloneable但不一定要实现接口Cloneable(类似于的使用Serializable)。没有反思就无法做到这一点:

ISomething i = ...if (i instanceof Cloneable) {   //DAMN! I Need to know about ISomethingImpl! Unless...   copy = (ISomething) i.getClass().getMethod("clone").invoke(i);}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/407716.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号