clone()方法使用时遇到的问题解决方法(JAVA)

我们平时在自定义类型中使用这个方法时会连续遇到 4 个问题。

基础代码如下:

class A {int[] a = {1,2,3};
}public class Test {public static void main(String[] args) {}
}

第一个:

当我们直接调用时报错原因是Object类中的clone方法是被protected修饰的所以需要重写。

第二个:

当我们重写之后报错的原因是clone方法有可能会抛出 CloneNotSupportedException 异常,而它又是受查异常所以需要我们进行处理。

第三个:

当我们处理完上面的 CloneNotSupportedException 异常后 ,这是又会有新的异常 原因是因为clone返回的是Object类型需要强转。

第四个:

上面的问题都处理完之后乍一看好像没事了,可是当我们运行之后又会报错。说该类不支持克隆。

此时的解决方法就是让被克隆的类实现 Cloneable 接口,这样就完成了。

注意:clone() 方法默认的是浅拷贝。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/133948.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

竞赛 深度学习 YOLO 实现车牌识别算法

文章目录 0 前言1 课题介绍2 算法简介2.1网络架构 3 数据准备4 模型训练5 实现效果5.1 图片识别效果5.2视频识别效果 6 部分关键代码7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于yolov5的深度学习车牌识别系统实现 该项目较…

支付宝企业转账到个人账号[新接口版](php源码,亲测)

前言 之前专栏写过一篇企业支付宝转账到个人的文章,里面用的是老接口,官方已经不再维护。最近有人找到帮忙使用新接口实现这个功能,看了下文档以及官方的sdk,为了这一个接口,我还要去下载官方庞大的sdk,而且php低版本的还不支持composer,就很离谱,经过一天的研究,把单…

Pytorch之ConvNeXt图像分类

文章目录 前言一、ConvNeXt设计决策1.设计方案2.Training Techniques3.Macro Design🥇Changing stage compute ratio🥈Change stem to "Patchify" 4.ResNeXt-ify5. Inverted Bottleneck6.Large Kernel Size7.Micro Design✨Replacing ReLU wit…

Diffusion Model论文/DALL E 2

B站视频学习记录 Ho J, Jain A, Abbeel P. Denoising diffusion probabilistic models[J]. Advances in neural information processing systems, 2020, 33: 6840-6851. Atwood J, Towsley D. Diffusion-convolutional neural networks[J]. Advances in neural information pro…

基于PLC的机械手控制系统设计

目录 摘 要......................................................................................................................... 1 第一章 绪论.............................................................................................................…

接口

一、认识接口 public interface A {//成员变量(常量)String NAME"啦啦啦";//成员方法 抽象方法void test();//不能有代码块 // static {}//不能有构造器 // public A{ // // }// 接口不能创建对象 }二、接口的好处 三、JDK8 接口新增…

【单片机】19-TFT彩屏

一、背景知识--显示器 1.什么是TFT (1)LCD显示器的构成:液晶面板驱动器【电压驱动】控制器【逻辑控制】 (2)液晶面板大致分为:TN,TFT,IPS等 (3)驱动器是跟随…

dpdk/spdk/网络协议栈/存储/网关开发/网络安全/虚拟化/ 0vS/TRex/dpvs技术专家成长体系教程

课程围绕安全,网络,存储,云原生4个维度去讲解核心技术点。 6个专栏组成:dpdk网络专栏、存储技术专栏、安全与网关开发专栏、虚拟化与云原生专栏、测试工具专栏、性能测试专栏 一、dpdk网络 dpdk基础知识 多队列网卡&#xff0…

AI算法平台及视频智能分析系统在高速公路场景中的智能化应用

一、行业背景 当前高速公路视频联网运行监测体系的建设思路,主要是改变过去烟筒式的建设模式,搭建以视频数据为核心的视频综合管理云服务中台,在全面汇聚基础数据的基础上通过数据智能支撑各部门和公司的应用需求。当前面临的建设需求如下&a…

06-Zookeeper选举Leader源码剖析

上一篇:05-Zookeeper典型使用场景实战 一、为什么要看源码 提升技术功底:学习源码里的优秀设计思想,比如一些疑难问题的解决思路,还有一些优秀的设计模式,整体提升自己的技术功底深度掌握技术框架:源码看多…

论文导读 | 7月8月上旬MSOM文章精选

编者按 淘宝店承诺的交货时间早些还是晚些更有利? 波动的市场环境下如何进行分布式储能的选址与运营? 企业存在服务竞争时如何对待“共享库存”这一模式? 网约车平台在线派单时能否综合权衡司机资质、等待时间、订单远近等多种因素&#xff1…

GEE:基于GLDAS数据集分析土壤湿度的时间序列变化

作者:CSDN @ _养乐多_ 本篇博客将介绍如何使用Google Earth Engine(GEE)进行土壤湿度数据的分析。我们将使用NASA GLDAS(Global Land Data Assimilation System)数据集,其中包括了关于土壤湿度的信息。通过该数据集,我们将了解土壤湿度在特定区域和时间段内的变化,并生…