Java设计模式之原型模式怎么实现


这篇“Java设计模式之原型模式怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java设计模式之原型模式怎么实现”文章吧。用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式其实就是从一个对象在创建另外一个可定制的对象,不需要知道任何创建的细节在运行期建立和删除原型。经常用于:类初始化消耗资源较多构造函数比较复杂1.实现cloneable 接口,重写Object的clone方法2.利用已有的一个原型对象,快速地生成和免费云主机域名原型对象一样的实例。浅复制:基本数据类型进行值传递、引用数据类型的指针仍是指向原来的对象(成员变量)。深复制:基本数据类型进行值传递、引用数据类型开辟新的内存空间。需求:实现克隆羊有一头羊,需要经过赋值再克隆出两头。Main方法Cloneable是标记型的接口,它们内部都没有方法和属性,实现 Cloneable来表示该对象能被克隆,能使用Object.clone()方法。如果没有实现 Cloneable的类对象调用clone()就会抛出CloneNotSupportedException。实现Cloneable默认是浅复制Main方法一定要实现接口cloneable 否则报错:Exception in thread “main” java.lang.CloneNotSupportedException: com.promsing.creational.prototype.type4.Sheep
at java.lang.Object.clone(Native Method)
at com.promsing.creational.prototype.type4.Sheep.clone(Sheep.java:76)
at com.promsing.creational.prototype.type4.DeepClient.main(DeepClient.java:14)羊类、房子类都需要实现Cloneable接口房子类羊类Main羊类、房子类都需要实现Serializable接口。注意这里可以不实现Cloneable了。房子类羊类MainSpring使用原型模式:@scope(“prototype”)后续走到了。AbstractBeanFactory类中的doGetBean方法中里边代码做判断mbd.isPrototype()ArrayList实现了Cloneable接口以上就是关于“Java设计模式之原型模式怎么实现”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注百云主机行业资讯频道。

相关推荐: Vue中Vue.extend()如何使用

今天小编给大家分享一下Vue中Vue.extend()如何使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Vue.extend 属于 Vue …

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 03/31 23:11
Next 03/31 23:13

相关推荐