原型模式 柔情只为你懂 2022-03-31 08:16 176阅读 0赞 public class Phone implements Cloneable { private String toPhoneNumber; // 去电号码 private String context; // 内容 private String hello; // 称谓 @Override public Phone clone() { try { return (Phone) super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } return null; } public Phone(Man man) { this.context = man.getContext(); this.hello = man.getHello(); } geter/setter } public class Man { private String hello = "先生您好,"; private String context = "需要剃须刀吗?"; geter } public class Prototype { public static void main(String... args) { int i = 0; Phone phone = new Phone(new Man()); while (i <= 5) { Phone clone = phone.clone(); phone.setToPhoneNumber(getRandString(11)); call(clone); i++; } } private static String getRandString(int maxLength) { String source = "0123456789"; StringBuffer sb = new StringBuffer(); Random rand = new Random(); for (int i = 0; i < maxLength; i++) { sb.append(source.charAt(rand.nextInt(source.length()))); } return sb.toString(); } private static void call(Phone phone) { System.out.println("给" + phone.getToPhoneNumber() + "打电话:" + phone.getHello() + phone.getContext()); } } 很简单的原型模式 ##### 原型模式的优点 ##### * 性能优良 * 逃避构造函数的约束 ##### 原型模式的使用场景 ##### > 资源优化场景 类初始化需要消化非常多的资源,这个资源包括数据、硬件资源等。 > 性能和安全要求的场景 通过new产生一个对象需要非常繁琐的数据准备或访问权限,则可以使用原型模式。 > 一个对象多个修改者的场景 #### 注意 #### 使用clone方法,在类的成员变量上就不要增加final关键字 -------------------- 学习之余也不要忘了劳逸结合哦 喜欢天马行空的同学请关注公众号: ![只为了博君一笑,没有别的用处][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI3NjMxNzk3_size_16_color_FFFFFF_t_70] [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI3NjMxNzk3_size_16_color_FFFFFF_t_70]: /images/20220331/c73bb8191fd84ffabad92878d80dc9a9.png
相关 原型模式 public class Phone implements Cloneable { private String toPhoneNumber; 柔情只为你懂/ 2022年03月31日 08:16/ 0 赞/ 177 阅读
相关 原型模式 一. 原型模式简介 原型模式(Prototype Pattern)也是一种创建型模式,它关注的是大量相似对象的创建问题。我们经常会遇到这样的情况:在系统中要创建大量的 超、凢脫俗/ 2022年02月21日 12:16/ 0 赞/ 208 阅读
相关 原型模式 对象浅拷贝 实现Clonable接口,重写clone方法,jvm的本地方法实现拷贝 Object protected native Object clone() 女爷i/ 2021年12月12日 11:39/ 0 赞/ 243 阅读
相关 原型模式 原型模式(Prototype Pattern):通过原型实例指定创建对象的种类,并且通过克隆这些原型来创建新的对象。原型模式是一种创建型模式 完成原型模式一般需要3个角 落日映苍穹つ/ 2021年12月05日 01:03/ 0 赞/ 203 阅读
相关 原型模式 原型模式 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种 「爱情、让人受尽委屈。」/ 2021年09月29日 16:10/ 0 赞/ 297 阅读
相关 原型模式 原型模式:用原型实例指定创建指定对象的种类,并且通过复制这些原型创建新的对象,同时又能保证性能。这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价 骑猪看日落/ 2021年09月17日 01:08/ 0 赞/ 290 阅读
相关 原型模式 5.原型模式 ![70][] class Program { static void Main(string[] arg 痛定思痛。/ 2021年09月16日 23:52/ 0 赞/ 324 阅读
相关 原型模式 原型模式 定义 在软件系统中,有时需要多次创建某一类型的对象,为了简化创建过程,可以只创建一个对象,然后通过对象克隆的方式复制出多个相同的对象,这就是原型设计模 野性酷女/ 2021年07月24日 20:41/ 0 赞/ 461 阅读
相关 原型模式 型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式是实现了... 小灰灰/ 2020年06月13日 05:37/ 0 赞/ 711 阅读
还没有评论,来说两句吧...