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

原创 java设计模式-目录
java设计模式-目录java设计模式有23种,三大类创建型模式(Creation)行为型模式(Behavioral)结构型模式(Structural)java设计模式有23种,三大类创建型模式(Creation)行为型模式(Behavioral)责任链模式(Chain of Responsibility)观察者模式(Observer)策略模式(Strategy)模板方法模式(Te...
2019-02-15 18:35:29
539
原创 java排序算法
Java排序算法稳定性:两个相同元素经过排序后是否保持原有的顺序,保持则稳定,否则不稳定1. 冒泡排序因为越大的元素会经过交换慢慢“浮”到数列的顶端,如同气泡最终会上浮到顶端一样算法原理比较相邻元素,如果第一个元素比第二个元素大,交换这两个元素经过第一趟排序后,最后一个元素被交换成整个数列中最大的元素再依次比较除最大的元素之外的数重复执行以上的步骤,直到没有元素可比较...
2019-05-26 17:41:13
166
原创 Spring源码-环境搭建
Spring源码搞一搞Spring源码,先搭建一下环境下载源码下载完成以后import项目,本机需要安装gradleimport成功后buildbuild成功后随便找一个test运行,发现报错,找不到cglib的类解决找不到cglib类的问题找到报错的spring-core包,打开spring-core.gradle,发现有这样一段代码,cglib重新打包执行一下...
2019-03-13 09:10:16
452
原创 java设计模式-创建型模式-单例模式
单例模式单例模式,保持对象的唯一性。私有构造方法,提供一个返回具体对象的方法。饿汉式单例模式对象在使用前已经被创建好,所以无论怎样调用,返回的都是同一个对象,所以是线程安全的public class EagerSingleton { /** * 饿汉式直接初始化 */ private static EagerSingleton ins...
2019-03-11 21:37:25
223
原创 java设计模式-创建型模式-抽象工厂模式
抽象工厂模式当工厂生产的具体产品不只是一个简单对象,而是要生产多组不同类型的产品时,使用工厂方法模式就不适用了。举例:有一个汽车零件工厂,负责生产一种汽车的零件。零件有发动机、轮子、车身,那么系统中就会有三个工厂类,发动机工厂类,车身工厂类,方向盘工厂类。这时增加了需求,有两家汽车品牌和该工厂开始合作,那么系统中就会增加三个零件类,三个工厂类,这样的话,系统中的类会大量增加,再使用工厂方法模...
2019-03-05 23:39:07
272
原创 java设计模式-创建型模式-工厂方法模式
工厂方法模式工厂方法模式,是在简单工厂的基础上,弥补了简单工厂的缺点(新增加需要被创建的对象需要修改工厂类,违背开闭原则)工厂方法模式不再通过一个工厂来创建各种对象,而是针对每一个对象,创建一个对应的工厂四个角色抽象工厂类:定义了抽象工厂方法具体工厂类:抽象工厂类的子类,实现抽象工厂方法,返回具体对象的实例抽象对象类:抽象工厂类定义的抽象工厂方法返回的对象类型,是所有具体对象类的...
2019-03-04 23:02:00
193
原创 java设计模式-创建型模式-简单工厂模式
简单工厂模式简单工厂模式,有一个工厂类,根据传入的参数不同,创建不同的对象。又叫静态工厂方法类三个角色工厂类,用来创建对象抽象对象类,所有需要被创建的对象的父类,封装一些公共的属性或方法具体对象类,被创建的类例子玩具工厂,传入想要生产的玩具名字,生产对应的玩具抽象类public abstract class Toy { public abstract v...
2019-03-03 18:16:04
326
原创 java设计模式-行为型模式-备忘录模式
备忘录模式备忘录模式,顾名思义为了就是实现一个“备忘”的功能而存在的。官话:在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复至原先保存的状态。三个角色Originator:发起人,就是想要实现备忘功能的角色Memento:备忘类,帮助实现备忘功能的角色,拥有和发起人一样的想要备份的属性,发起人通过备忘录类来恢复之前的数据CareT...
2019-02-25 14:21:34
246
原创 java设计模式-行为型模式-责任链模式
责任链模式责任链模式,发送者发送请求给接收者,接收者是一个链,一个接收者不满足条件的话,把请求转发给下一个请求者,接收者拥有下一个接收者的引用。两个角色请求者接收者例子:有一笔大额订单需要领导审批共有三级领导,一级领导处理1万元以下的订单,二级领导处理1万-2万元的订单,三级领导处理2万以上的订单定义一个订单类(Order)public class Order {...
2019-02-17 11:19:31
250
1
原创 java设计模式-行为型模式-观察者模式
观察者模式观察者模式,是实现对象之间联动的一种解决方案,当一个对象发生变化,其他对象会得到通知四个角色抽象观察者(Observer)具体观察者(ConcreteObserver)抽象目标(Target)具体目标(ConcreteTarget)例子:RNG战队五名成员,letme、xiaohu、mlxg、uzi、ming。当有一名队友遭受到攻击时,其他队友都知道了他被攻击,都前...
2019-02-17 10:47:25
256
原创 java设计模式-行为型模式-策略模式
策略模式策略模式,就是定义一组策略算法,将每一个策略算法封装成一个类,是它们之间可以相互替换三个角色Strategy 抽象策略对象(接口/抽象类)ConcreteStrategy 具体策略算法对象Context 封装角色(具体计算)例子: 商品价格根据会员等级打折扣假设会员等级有三个级别,一级会员商品价格打九折,二级打八折,三级打七折,计算不同会员等级下对应商品的实际价格。...
2019-02-15 18:35:49
242
原创 java设计模式-行为型模式-模板方法模式
模板方法模式模板方法模式,定义一个功能的实现流程,封装共有的流程,公开需要不同实现的步骤(方法),使得不同子类在固定整个功能骨架的情况下,来实现统一功能的不同表现两个角色抽象父类(定义功能的实现流程/步骤)具体实现子类例子:把不同的东西放入冰箱,总共分三步,打开冰箱门、放东西、关上冰箱门定义了放东西的三个步骤,私有第一步和第三步,公开第二步给子类来使用,子类不用自己再操作一遍...
2019-02-15 18:35:39
204
原创 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
324
原创 各种方法
各种方法,积少成多。目录1.最小公倍数2.List集合去重3.质因数分解4.最大公约数5.欧几里得算法求最大公约数(辗转相除法)6.质因数分解求最大公约数(两个数的共同因子相乘就是最大公约数)7.汉诺塔问题1.最小公倍数 /** * 最小公倍数 * @param m * @param n * @return ...
2018-06-13 11:11:03
299
原创 解决Xshell评估期已过
近日用到Xshell5评估期已过的问题解决方案如下:Xshell下载地址:点击打开链接这个是free license,免费的点了Download后会让填写一些信息,可以发现License type默认选中了Home and school use,填写必填项,邮箱填写真实邮箱,因为会用邮箱激活(发过来一封激活邮件)邮件内容如下:点击链接用浏览器打开以后,就是直接下载了。...
2018-06-08 11:52:14
4524
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人