自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱折腾的程序猿GYP

锲而不舍,天道酬勤。码路漫漫,吾心灿灿。

  • 博客(28)
  • 资源 (10)
  • 收藏
  • 关注

原创 通过Harbor部署Docker私仓

通过Harbor部署Docker私仓

2023-02-26 22:09:29 164 1

原创 CentOS上安装docker-compose

CentOS上安装docker-compose

2023-02-26 19:23:09 1599

原创 CentOS上安装docker

CentOS上安装docker

2023-02-26 18:16:51 193

原创 BSAH中$0、$1、$2、$#、$@、$*、$? 的含义

BSAH中$0、$1、$2、$#、$@、$*、$? 的含义

2023-02-26 17:05:33 359

原创 GO语言中三种方式创建切片

GO语言中三种方式创建切片

2022-10-12 10:28:40 1634 1

原创 GO创建数组

GO创建数组

2022-10-11 18:16:47 989

原创 java运算符

Java运算符1 基本介绍Java中的运算符可分为:算数运算符,关系运算符,逻辑运算符,位运算符,赋值运算符和条件运算符。2 算数运算符算数运算符包括加(+)、减(-)、乘(*)、除(/)、取余(%),这几个基础的我就不介绍了,说一下这两个++和--。这两种运算符都前缀和后缀两种形式,例如:a++和++a,b--和--b。前缀形式(++a)是先运算再赋值,后缀形式(a++)是先赋值再运算,代码演示一下区别。public static void main(String[] args) {

2021-04-09 14:03:56 60

原创 HashMap源码超详细解析

HashMap源码超详细解析

2021-04-09 13:55:04 160

原创 23种设计模式9_命令模式

23种设计模式9_命令模式1 基本介绍命令模式:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和回复功能。UML类图如下:从类图种可以看出,有三种角色:Invoker调用者 协调调用命令,什么命令由谁来执行。Command命令 命令角色,需要执行的命令的详细内容都封装在命令角色里面。Receiver接收者 这个角色就是命令内容的具体的干活的人。2 通用代码演示Receiver调用者public abstract class

2021-04-06 16:14:03 66

原创 在线画图工具ProcessOn

在线画图工具推荐一款非常好用的在线画图工具:ProcessOn可以团队协作,也可以个人创作,同时还有海量的模板可供使用。支持流程图、思维导图、原型图、UML类图、网络拓扑图、组织结构图、BPMN等...

2021-03-26 09:09:28 545

原创 23种设计模式8_中介者模式

23种设计模式8_中介者模式1 基本介绍中介者模式:用一个中介者对象封装一系列对象的交互关系,从而使各个对象之间不需要显式的相互作用,降低他们的耦合性,而且可以独立地改变他们之间的交互。UML类图如下:从类图中可以看出有三种角色:Mediator抽象中介者角色 抽象中介者角色定义统一接口,用于各同事之间的通信。ConcreteMediator具体中介者角色 具体中介者角色通过协调各同事角色实现协作行为,因此他必须依赖各个同事角色。Colleague同事类角色 同事类角色与其他同事类角色进行交

2021-03-25 10:07:34 169

原创 23种设计模式7_代理模式之二动态代理

23种设计模式7_代理模式之二动态代理1 基本介绍代理模式:为其他对象提供一种代理以控制对这个对象的访问代理模式也叫委托模式,它是一项基本设计技巧。许多其他的模式,如状态模式、策略模式、访问者模式本质上都是在更加特殊的场合采用了代理模式。在日常开发应用种,代理模式能够提供非常好的访问控制。代理可分为两种:一种是静态代理,由程序员创建或由特定工具自动生成源代码,再对其编译。在程序运行前,代理类的**.class**文件就已经存在了;另一种是动态代理:在程序运行时,运用反射机制动态创建而成。静态代理通

2021-03-24 14:21:36 278 2

原创 23种设计模式7_代理模式之一静态代理

23种设计模式7_代理模式之一静态代理1 基本介绍代理模式:为其他对象提供一种代理以控制对这个对象的访问代理模式也叫委托模式,它是一项基本设计技巧。许多其他的模式,如状态模式、策略模式、访问者模式本质上都是在更加特殊的场合采用了代理模式。在日常开发应用种,代理模式能够提供非常好的访问控制。代理可分为两种:一种是静态代理,由程序员创建或由特定工具自动生成源代码,再对其编译。在程序运行前,代理类的**.class**文件就已经存在了;另一种是动态代理:在程序运行时,运用反射机制动态创建而成。静态代理通

2021-03-24 14:13:39 232

原创 23种设计模式6_建造者模式

23种设计模式6_建造者模式1 基本介绍建造者模式也叫生成器模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式的UML类图:如上图,建造者模式种有4种角色:Product产品类 通常是实现了模板方法模式,也就是有模板方法和基本方法。Builder抽象建造者 规范产品的组件,一般是由子类实现。ConcreteBuilder具体建造者 实现抽象类定义的所有方法,并且返回一个组建好的对象。Director导演类 负责安排已有模块的顺序,然后告诉Builde

2021-03-23 14:03:45 129

原创 23种设计模式5_模板方法模式

1 基本介绍定义:一个操作中的算法的框架,将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。UML类图:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YX8Dppp1-1616467576386)(C:\Users\高耀鹏\AppData\Roaming\Typora\typora-user-images\image-20210323095437688.png)]模板方法模式包含两种模式:抽象模板(AbstractClass)

2021-03-23 10:50:01 140

原创 23种设计模式4_原型模式

23种设计模式4_原型模式1 基本介绍原型模式(Prototype模式):用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象。该模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节。原理:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝他们自己来实施创建,即对象.clone()2 克隆羊问题现在有一只羊,姓名:tom,年龄:1,颜色:白色。请编写程序创建和tom属性完全相同的100只羊。3 传统方式实现//

2021-03-22 17:51:59 125

原创 Maven的settings.xml配置详解

Maven的settings.xml配置详解1 基本介绍maven的两大配置文件:settings.xml和pom.xml。其中settings.xml是maven的全局配置文件,pom.xml则是文件所在项目的局部配置。1.1 settings.xml文件位置①全局配置文件:${M2_HOME}/conf/settings.xml,对操作系统所有者生效②用户配置:user.home/.m2/settings.xml,只对当前操作系统的使用者生效1.2 配置文件优先级局部配置优先于全局配置。

2021-03-18 17:41:47 38900 3

原创 pom.xml配置文件详解

pom.xml配置文件详解1 基本介绍POM是项目对象模型(Project Object Model)的简称,它是Maven项目中的文件,使用XML表示,名称叫做pom.xml。作用类似ant的build.xml文件,功能更强大。该文件用于管理:源代码、配置文件、开发者的信息和角色、问题追踪系统、组织信息、项目授权、项目的url、项目的依赖关系等等。事实上,在Maven世界中,project可以什么都没有,甚至没有代码,但是必须包含pom.xml文件。2 pom文件基础配置<project

2021-03-18 17:38:21 7923

原创 maven

1 maven简介maven 官网:https://maven.apache.orgmaven是一个项目管理工具,它包含了一个项目对象模型,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中插件目标的逻辑。版本:maven有自己的版本定义和规则构建:可以完成编译,打包,部署等。依赖管理:方便引入所需依赖 Jar 包,不需手动下载文档生成:maven的site命令支持各种文档信息的发布,包括构建过程的各种输出,javadoc,产品文档等。项目关系:一个大型的项目通

2021-03-18 17:34:43 78

原创 23种设计模式3_抽象工厂模式

1 基本介绍抽象工厂模式:定义一个接口用于创建相关或有依赖关系的对象簇,而无需指明具体的类。抽象工厂模式可以将简单工厂模式和工厂方法模式进行整合简单工厂模式和工厂方法模式以及下面用到的一些类参考:23种设计模式2_工厂模式。2 代码演示interface SellType { public void sellFruit();}// 直接售卖public class Sell implements SellType { public void sellFruit() { Sy

2021-03-13 20:58:39 47

原创 23种设计模式2_工厂模式

1 基本介绍假如现在有这样一个水果店的项目需求:① 水果的种类很多(苹果、芒果、橙子、西瓜等);② 完成水果店的在线订购功能,要求便于扩展,便于维护。2 代码演示2.1 简单实现创建抽象类Fruitpublic abstract class Fruit { public abstract void make();}创建水果类:苹果、芒果、橙子、西瓜等// 苹果public class Apple extends Fruit { @Override public

2021-03-13 20:36:33 54

原创 23种设计模式1_单例模式

23种设计模式1_单例模式1 基本介绍单例模式:采取一定的方法保证在整个的软件系统中,对某个类***只能存在一个对象实例***,并且该类只提供一个取得其对象实例的方法。比如:SessionFactory2 饿汉式2.1 实现步骤​ ① 构造器私有化​ ② 类的内部创建对象​ ③ 向外暴露一个静态的公共方法2.2 代码演示2.2.1 方式一public class Singleton { // 1.构造器私有化 private Singleton() {}

2021-03-12 19:26:48 51

原创 设计模式六大原则之六:迪米特原则

1 基本介绍① 一个对象应该对其他对象保持最少的了解;② 类与类之间的关系越密切,耦合度越大;③ 迪米特原则(Demeter Principle)又称最少知道原则,即一个类对自己依赖的类知道的越少越好。也就是说,对于被依赖的类不管多么复杂,都尽量将逻辑封装在类的内部。对外除了提供的public方法,不对外泄露任何信息。④ 每个对象都会与别的对象存在耦合关系,耦合的方式有很多种:依赖、关联、组合聚合等。其中我们将出现在成员变量、方法参数、方法返回值中的类称为直接关系类,而出现在局部变量中的类称为非直接

2021-03-12 09:28:14 79

原创 设计模式六大原则之五:开闭原则

1 基本介绍开闭原则(OCP:Open Closed Principle):一个软件实体如类,模块和函数应该对扩展开放,对修改关闭。用抽象构建架构,用实现扩展细节。当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。2 案例演示public class Exer { public static void main(String[] args) { Coach coach = new Coach(); coach.execP

2021-03-12 09:22:09 111

原创 设计模式六大原则之四:里氏替换原则

1 基本介绍java中的继承大家都用过,子类可以继承父类的方法和属性,其实继承还有一层隐藏的含义:父类已经写好了的方法,就是定义了自己的规范,虽然没有要求规定子类必循遵循这些规范,但是如果子类对这些方法进行了修改,就会对整个继承体系造成破坏。另外子类继承父类,也降低了程序的可移植性,增加了耦合性,如果父类想要改变这些方法,就需要考虑到子类的功能是否会出现bug或者是存在bug的隐患。里氏替换原则:所有引用基类的地方必须能透明地使用其子类的对象。在使用继承时,在子类中尽量不要重写父类的方法。继承实际上是让

2021-03-12 09:18:52 68

原创 设计模式六大原则之三:依赖倒转原则

1 基本介绍依赖倒转原则(Dependence Inversion Principle):​ ① 高层模块不应该依赖底层模块,二者都应该依赖其抽象​ ② 抽象不应该依赖细节,细节应该依赖抽象​ ③ 依赖倒转(倒置)的中心思想是面向接口编程​ ④ 依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽要的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在java中,抽象指的是接口或者抽象类,细节就是具体的实现类。​ ⑤ 使用接口或者抽象类的目的是制定好规范,而不涉及任何具体

2021-03-11 22:43:21 147 4

原创 设计模式六大原则之二:接口隔离原则

1 基本介绍接口隔离原则(Interface Segregation Principle):客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上。2 案例演示如上图,类B,类D都是接口I的实现,其中类A通过接口I依赖B,使用方法1,2,3但是B却还要实现方法4,5;类C通过接口I依赖D,使用方法1,4,5但是D却还要实现方法2,3。public class Segregation1 { public static void main(String[] args)

2021-03-11 22:37:06 64 2

原创 设计模式六大原则之一:单一职责原则

1 基本介绍单一职责原则(Single Responsibility Principle):对于类来说,一个类应该只负责一项职责。比如类A负责两个不同的职责:职责1,职责2。当职责1需求变更而改变A时,可能造成职责2执行错误,所以需要将类A的力度分解为A1,A2。2 案例演示2.1 案例一public class SingleResponsibility1 { public static void main(String[] args) { Vehicle vehicle =

2021-03-11 22:29:51 73

harbor-offline-installer-v2.7.1.tgz

通过harbor部署docker私仓的资源包:harbor-offline-installer-v2.7.1.tgz

2023-02-26

geodesy测算经纬度距离

geodesy测算经纬度距离 org.gavaghan.geodesy 计算两点坐标距离

2023-01-04

HashMap.java

对HashMap源码非常详细的讲解,重要的几个函数基本每一步都加上了注释说明,学会了面试最少加个一两千哦!

2021-04-09

cglib动态代理.zip

cglib动态代理资源包

2021-03-24

java反编译.zip

java反编译工具

2021-03-11

通过spring cloud代建完整的分布式微服务架构

使用spring cloud代建完整的分布式微服务架构,包括spring security oauth2权限控制,docker,config动态修改配置文件,eureka服务发现,zuul路由,实现服务和服务之间的调用

2021-03-11

HydraForWinAndMac.zip

Hydra是一款Win/Mac都可以用的屏幕共享软件

2021-03-11

Everything.zip

一款特别好用的windows下的搜索软件,免费的哦!

2021-03-11

xshell和xftp.zip

免费版本的安全终端模拟软件xshell和文件传输工具xftp

2021-02-25

jdk8u281.zip

windows和linux下的jdk软件包,1.8版本的。

2021-02-25

typora-x64.zip

markdown编辑器,支持代码和数学公式,编辑器界面非常简洁舒服!

2021-02-25

GitKrakenSetup.exe

超好用的免费的git可视化工具,当前版本为免费版本,请勿升级!

2021-02-24

空空如也

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

TA关注的人

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