- 博客(11)
- 收藏
- 关注
原创 03 java内存模型
一、从一个程序开始说起static boolean run = true; public static void main(String[] args) throws InterruptedException { Thread t = new Thread(()->{ while(run){ // .... } }); t.start(); sleep(1); run = false; // 线程t不会如预想的停下来}执行上面的代码,会发现程序根本停不下来。这是为什么呢
2022-04-09 10:51:00
70
原创 02 锁的原理
一、先来看下面的程序两个线程对初始值为 0 的静态变量一个做自增,一个做自减,各做 5000 次,结果是 0 吗?package com.gaoxin.courrent;public class Demo01 { public static int count = 0 ; public static void main(String[] args) throws InterruptedException { Thread t1 = new Thread(()
2022-04-08 22:31:05
366
原创 原型设计模式
一、原型模式原型模式(PrototypePattern)是指原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。二、适用场景原型模式主要适用于以下场景:1、类初始化消耗资源较多2、new产生的一个对象需要非常繁琐的过程(数据准备、访问权限等)3、构造函数比较复杂4、循环体中生产大量对象在Spring中,原型模式应用得非常广泛。例如scope=“prototype”,在我们经常用的JSON.parseObject()也是一种原型模式。下面,我们来看看原型模式类结构图:三、浅拷贝
2021-10-27 22:56:53
93
原创 单例设计模式
一、单例模式的应用场景单例模式(Singleton Pattern)是指确保一个类在任何情况下都绝对只有一个实例,并 提供一个全局访问点。单例模式是创建型模式。单例模式在现实生活中应用也非常广泛。 例如,国家主席、公司 CEO、部门经理等。在 J2EE 标准中,ServletContext、 ServletContextConfig 等;在 Spring 框架应用中 ApplicationContext;数据库的连接 池也都是单例形式。二、单例模式的实现方式1、饿汉式饿汉式单例是在类加载的时候就立即
2021-10-16 20:52:43
92
原创 架构设计原则
架构设计原则1、开闭原则开闭原则(Open-ClosedPrinciple,OCP)是指一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。所谓的开闭,也正是对扩展和修改两个行为的一个原则。强调的是用抽象构建框架,用实现扩展细节。可以提高软件系统的可复用性及可维护性。开闭原则,是面向对象设计中最基础的设计原则。它指导我们如何建立稳定灵活的系统,例如:我们版本更新,我尽可能不修改源代码,但是可以增加新功能。在现实生活中对于开闭原则也有体现。比如,很多互联网公司都实行弹性制作息时间,规定每天工作8小时。
2021-10-10 19:06:39
218
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人