Java设计模式

总结b站尚硅谷的设计模式相关视频

设计模式三大类型以及23种设计模式以及七大设计原则

设计模式------设计模式三大分类以及六大原则_设计模式分为哪三大类-CSDN博客

三大类型

(1)创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

(2)结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

(3)行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。

七大设计原则

1)单一职责原则

2)接口隔离原则

3)依赖倒转原则

4)里氏替换原则

5)开闭原则ocp

6)迪米特法则

7)合成复用原则

经典面试题:

原型设计模式的应用

Spring框架中bean的创建

原型设计模式中的深拷贝和浅拷贝

浅拷贝与深拷贝的区别(详解)_深拷贝和浅拷贝的区别-CSDN博客

以下图示来自以下链接

赋值以及浅拷贝的区别参考以上链接

赋值 ,其实是该对象的在栈中的地址,而不是堆中的数据。也就是两个对象指向的是同一个存储空间,无论哪个对象发生改变,其实都是改变的存储空间的内容,因此,两个对象是联动的 。
浅拷贝 是按位拷贝对象,它会创建一个新对象 ,这个对象有着原始对象属性值的一份精确拷贝。如果属性是基本类型,拷贝的就是基本类型的值;如果属性是内存地址(引用类型),拷贝的就是内存地址 ,因此如果其中一个对象改变了这个地址,就会影响到另一个对象。即默认拷贝构造函数只是对对象进行浅拷贝复制(逐个成员依次拷贝),即只复制对象空间而不复制资源。

相关推荐
代码山河5 分钟前
Java的前世今生:从Oak语言到Java 23的发展史
java·学习·架构·教程·面向对象·项目
vx_Biye_Design6 分钟前
springboot角色扮演服务平台65161-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·python·spring·课程设计
李游Leo7 分钟前
HarmonyOS 7 QuickDock 闪控窗开发实录 02:floatView × floatingBall:形态切换、位置恢复与单一状态源【鸿蒙心迹】
java·华为·harmonyos
企业数字化笔记8 分钟前
视频局部合成怎么做得自然?掩膜修复、边缘羽化、时序稳定与背景替换
java·javascript·音视频
仍然.14 分钟前
Redis---主从复制
java·数据库·redis
vx_Biye_Design17 分钟前
springboot咖啡厅顾客点单管理系统12080-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·课程设计·express
QQ_216962909621 分钟前
基于微信小程序的智能膳食分析系统
java·大数据·spring boot·微信小程序·小程序·旅游
海绵宝宝转agent24 分钟前
Leetcode100 二叉树的中序遍历
java·算法
砚底藏山河28 分钟前
量化实战:行情数据 Schema 演进与向后兼容
java·python·金融·maven
专业程序开发源29 分钟前
flask动漫推荐系统32319-计算机课程设计、毕业设计
java·spring boot·后端·django·flask·php·课程设计