自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 java设计模式-目录

java设计模式-目录java设计模式有23种,三大类创建型模式(Creation)行为型模式(Behavioral)结构型模式(Structural) java设计模式有23种,三大类 创建型模式(Creation) 行为型模式(Behavioral) 责任链模式(Chain of Responsibility) 观察者模式(Observer) 策略模式(Strategy) 模板方法模式(Te...

2019-02-15 18:35:29 494

原创 java排序算法

Java排序算法 稳定性:两个相同元素经过排序后是否保持原有的顺序,保持则稳定,否则不稳定 1. 冒泡排序 因为越大的元素会经过交换慢慢“浮”到数列的顶端,如同气泡最终会上浮到顶端一样 算法原理 比较相邻元素,如果第一个元素比第二个元素大,交换这两个元素 经过第一趟排序后,最后一个元素被交换成整个数列中最大的元素 再依次比较除最大的元素之外的数 重复执行以上的步骤,直到没有元素可比较...

2019-05-26 17:41:13 134

原创 Spring源码-环境搭建

Spring源码 搞一搞Spring源码,先搭建一下环境 下载源码 下载完成以后import项目,本机需要安装gradle import成功后build build成功后随便找一个test运行,发现报错,找不到cglib的类 解决找不到cglib类的问题 找到报错的spring-core包,打开spring-core.gradle,发现有这样一段代码,cglib重新打包 执行一下...

2019-03-13 09:10:16 399

原创 java设计模式-创建型模式-单例模式

单例模式 单例模式,保持对象的唯一性。 私有构造方法,提供一个返回具体对象的方法。 饿汉式单例模式 对象在使用前已经被创建好,所以无论怎样调用,返回的都是同一个对象,所以是线程安全的 public class EagerSingleton { /** * 饿汉式直接初始化 */ private static EagerSingleton ins...

2019-03-11 21:37:25 180

原创 java设计模式-创建型模式-抽象工厂模式

抽象工厂模式 当工厂生产的具体产品不只是一个简单对象,而是要生产多组不同类型的产品时,使用工厂方法模式就不适用了。 举例:有一个汽车零件工厂,负责生产一种汽车的零件。零件有发动机、轮子、车身,那么系统中就会有三个工厂类,发动机工厂类,车身工厂类,方向盘工厂类。这时增加了需求,有两家汽车品牌和该工厂开始合作,那么系统中就会增加三个零件类,三个工厂类,这样的话,系统中的类会大量增加,再使用工厂方法模...

2019-03-05 23:39:07 234

原创 java设计模式-创建型模式-工厂方法模式

工厂方法模式 工厂方法模式,是在简单工厂的基础上,弥补了简单工厂的缺点(新增加需要被创建的对象需要修改工厂类,违背开闭原则) 工厂方法模式不再通过一个工厂来创建各种对象,而是针对每一个对象,创建一个对应的工厂 四个角色 抽象工厂类:定义了抽象工厂方法 具体工厂类:抽象工厂类的子类,实现抽象工厂方法,返回具体对象的实例 抽象对象类:抽象工厂类定义的抽象工厂方法返回的对象类型,是所有具体对象类的...

2019-03-04 23:02:00 155

原创 java设计模式-创建型模式-简单工厂模式

简单工厂模式 简单工厂模式,有一个工厂类,根据传入的参数不同,创建不同的对象。又叫静态工厂方法类 三个角色 工厂类,用来创建对象 抽象对象类,所有需要被创建的对象的父类,封装一些公共的属性或方法 具体对象类,被创建的类 例子 玩具工厂,传入想要生产的玩具名字,生产对应的玩具 抽象类 public abstract class Toy { public abstract v...

2019-03-03 18:16:04 282

原创 java设计模式-行为型模式-备忘录模式

备忘录模式 备忘录模式,顾名思义为了就是实现一个“备忘”的功能而存在的。官话:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复至原先保存的状态。 三个角色 Originator:发起人,就是想要实现备忘功能的角色 Memento:备忘类,帮助实现备忘功能的角色,拥有和发起人一样的想要备份的属性,发起人通过备忘录类来恢复之前的数据 CareT...

2019-02-25 14:21:34 212

原创 java设计模式-行为型模式-责任链模式

责任链模式 责任链模式,发送者发送请求给接收者,接收者是一个链,一个接收者不满足条件的话,把请求转发给下一个请求者,接收者拥有下一个接收者的引用。 两个角色 请求者 接收者 例子:有一笔大额订单需要领导审批 共有三级领导,一级领导处理1万元以下的订单,二级领导处理1万-2万元的订单,三级领导处理2万以上的订单 定义一个订单类(Order) public class Order { ...

2019-02-17 11:19:31 211 1

原创 java设计模式-行为型模式-观察者模式

观察者模式 观察者模式,是实现对象之间联动的一种解决方案,当一个对象发生变化,其他对象会得到通知 四个角色 抽象观察者(Observer) 具体观察者(ConcreteObserver) 抽象目标(Target) 具体目标(ConcreteTarget) 例子:RNG战队五名成员,letme、xiaohu、mlxg、uzi、ming。当有一名队友遭受到攻击时,其他队友都知道了他被攻击,都前...

2019-02-17 10:47:25 219

原创 java设计模式-行为型模式-策略模式

策略模式 策略模式,就是定义一组策略算法,将每一个策略算法封装成一个类,是它们之间可以相互替换 三个角色 Strategy 抽象策略对象(接口/抽象类) ConcreteStrategy 具体策略算法对象 Context 封装角色(具体计算) 例子: 商品价格根据会员等级打折扣 假设会员等级有三个级别,一级会员商品价格打九折,二级打八折,三级打七折,计算不同会员等级下对应商品的实际价格。...

2019-02-15 18:35:49 200

原创 java设计模式-行为型模式-模板方法模式

模板方法模式 模板方法模式,定义一个功能的实现流程,封装共有的流程,公开需要不同实现的步骤(方法),使得不同子类在固定整个功能骨架的情况下,来实现统一功能的不同表现 两个角色 抽象父类(定义功能的实现流程/步骤) 具体实现子类 例子:把不同的东西放入冰箱,总共分三步,打开冰箱门、放东西、关上冰箱门 定义了放东西的三个步骤,私有第一步和第三步,公开第二步给子类来使用,子类不用自己再操作一遍...

2019-02-15 18:35:39 178

原创 Java非对称加密RSA

1.RSA工具类 package com.river.blog.utils; import org.apache.commons.codec.binary.Base64; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.crypto.Cipher; import java.security.Key; ...

2018-06-14 18:38:22 268

原创 各种方法

各种方法,积少成多。 目录 1.最小公倍数 2.List集合去重 3.质因数分解 4.最大公约数 5.欧几里得算法求最大公约数(辗转相除法) 6.质因数分解求最大公约数(两个数的共同因子相乘就是最大公约数) 7.汉诺塔问题 1.最小公倍数     /** * 最小公倍数 * @param m * @param n * @return ...

2018-06-13 11:11:03 270

原创 解决Xshell评估期已过

近日用到Xshell5评估期已过的问题解决方案如下:Xshell下载地址:点击打开链接这个是free license,免费的点了Download后会让填写一些信息,可以发现License type默认选中了Home and school use,填写必填项,邮箱填写真实邮箱,因为会用邮箱激活(发过来一封激活邮件)邮件内容如下:点击链接用浏览器打开以后,就是直接下载了。...

2018-06-08 11:52:14 4432

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除