首页 > 其他分享 >原型模式(深浅克隆)

原型模式(深浅克隆)

时间:2023-03-13 18:14:54浏览次数:41  
标签:克隆 Cltation clone 原型 cltation 深浅 public name

浅克隆

用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型对象相司的新对象。
结构
原型模式包含如下角色:
抽象原型类:规定了具体原型对象必须实现的的clone()方法。
具体原型类:实现抽象原型类的clone()方法,它是可被复制的对象。
访问类:使用具体原型类中的clone()方法来复制新的对象。

具体原型类:

public class Cltation implements Cloneable{
private String name;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}
@Override
protected Cltation clone() throws CloneNotSupportedException {
System.out.println("具体原型复制成功");
return (Cltation)super.clone();
}

public void show(){
System.out.println(name+"评为三好学生,特发此状!");
}
}
访问类:
public class Client {
public static void main(String[] args) throws Exception{
//创建原型对象
Cltation cltation=new Cltation();
//克隆原型对象
Cltation cltation1=cltation.clone();
cltation.setName("张三");
cltation1.setName("李四");
cltation.show();
cltation1.show();
}

}

标签:克隆,Cltation,clone,原型,cltation,深浅,public,name
From: https://www.cnblogs.com/wmqxlt/p/17212371.html

相关文章

  • 一次性克隆所有仓库
    将下方文件保存到一个"cloneAll.sh"文件中:#!/bin/bashif[-z"$1"];thenecho"waitingforthefollowingarguments:username+max-page-number"exit......
  • 单例bean与原型bean的区别
    在使用Spring开发时,Spring提供了五种scope,分别为singleton,prototype,request,session,globalsession。上图为各个scope描述的官方文档截图。Spring在一开始的时候只提供了s......
  • 【教学典型案例】22.原型图的面向对象
    目录​​一:背景介绍​​​​二:面向对象思想​​​​面向对象思想:​​​​三:分析过程​​​​1、颗粒封装、组合使用​​​​将所有页面中的公共内容抽取出来,封装成组件​​......
  • gitlab克隆不显示端口
    1、修改配置文件/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml##更改所需端口  2、重启gitlab-ctl restart ......
  • 创建型-原型模式
    定义 使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式---百科。 通俗的说就是原型模式是一种创建型设计模式,指定某......
  • Spring设计模式——原型模式
    原型模式原型模式(PrototypePattern),是指原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。原型模式主要适用于以下场景:类初始化消耗资源较多使用new生......
  • vue生命周期以及如何将axios挂载到vue的原型链上
    生命周期组件的生命周期是指一个组件从创建->运行->销毁的整个阶段,强调的是一个时间段生命周期函数:是由vue框架提供的内置函数,会伴随着组件的生命周期,自动按次序执行 ......
  • JavaScript对象及面向对象基础(对象、构造函数、原型对象、继承、原型链、借用构造函数
    JavaScript是一种描述性语言,是一种基于对象和事件驱动的,具有安全性能的脚本语言。JavaScript语言是通过一种叫做“原型”的方式来实现面向对象编程的。一、对象(1)内置对象Str......
  • Book-深入设计模式-原型模式
    Book-深入设计模式-原型模式https://refactoringguru.cn/design-patterns/prototype原型模式亦称:克隆、Clone、Prototype原型模式是一种创建型设计模式,使你能够复制......
  • js对象和原型、原型链的关系
    JS的原型、原型链一直是比较难理解的内容,不少初学者甚至有一定经验的老鸟都不一定能完全说清楚,更多的"很可能"是一知半解,而这部分内容又是JS的核心内容,想要技术进阶的话肯......