原型模式即对象的复制过程
具体我讲解如下:
先设计个实体类吧,比如dog 但必须实现Cloneable接口package com.moshi.prototype;public class dog implements Cloneable{
private int age;//年龄
private String content;//描述信息
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public dog clone(){
try {
dog object=(dog)super.clone();
return object;
} catch (CloneNotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}//现在我们做个测试类
package com.moshi.prototype;public class testclient { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
dog dog1=new dog();//原型狗1
dog1.setAge(12);
dog dog2=dog1.clone();//克隆狗2
dog2.setAge(15);
dog1.setAge(13);//更改原型狗年龄
System.out.println(dog2.getAge());
System.out.println(dog1.getAge());
}
}你们自己可以运行调试下 体验下原型模式的好处测试对象设计
具体我讲解如下:
先设计个实体类吧,比如dog 但必须实现Cloneable接口package com.moshi.prototype;public class dog implements Cloneable{
private int age;//年龄
private String content;//描述信息
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public dog clone(){
try {
dog object=(dog)super.clone();
return object;
} catch (CloneNotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}//现在我们做个测试类
package com.moshi.prototype;public class testclient { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
dog dog1=new dog();//原型狗1
dog1.setAge(12);
dog dog2=dog1.clone();//克隆狗2
dog2.setAge(15);
dog1.setAge(13);//更改原型狗年龄
System.out.println(dog2.getAge());
System.out.println(dog1.getAge());
}
}你们自己可以运行调试下 体验下原型模式的好处测试对象设计
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货