hooyantsing's Blog

P49 原型模式(1)-克隆羊

字数统计: 245阅读时长: 1 min
2020/11/09

尚硅谷Java设计模式(图解+框架源码剖析)

传统方式解决克隆羊问题

  1. 优点是比较简单,简单易操作。
  2. 在创建新的对象时,总是需要重新获取原始对象的属性,如果创建的对象比较复杂时,效率比较低。
  3. 总是需要重新初始化对象,而不是动态地获得对象运行时的状态,不够灵活。

思路:Java种Object类是所有类的根类(基类),Object类提供了一个clone()方法,该方法可以将一个Java对象复制一份,但是需要实现clone的Java类必须要实现一个接口Cloneable,该接口表示该类能够复制且具有复制的能力 => 原型模式。

1
2
3
4
5
6
public class Sheep{
private String name;
private int age;
private String color;
// getter setter toSting
}
1
2
3
4
5
6
7
public class Test{
public static void main(String[] args){
Sheep sheep = new Sheep("tom",1,"白色");
Sheep sheep1 = new Sheep(sheep.getName(),sheep.getAge(),sheep.getColor());
// more sheep*
}
}
CATALOG
  1. 1. 传统方式解决克隆羊问题