自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 Ubuntu18.04 下 CUDA 11.4和 Pytorch 11.4安装

Ubuntu18.04 下 CUDA 11.4和 Pytorch 11.4安装

2022-11-25 16:18:34 3115 2

原创 MySQL 基础入门

MySQL——基础介绍常见命令查看mysql版本# 方式一:mysql > select version(); # 登录到mysql服务端# 方式二:mysql --version; # 没有登录到mysql服务端# 方式三:mysql --V; # 没有登录到mysql服务端常见操作命令show database; # 查看所有数据库use [库名]; # 打开指定数据库show tables; # 查看当前所有表show tables fro.

2020-07-19 14:11:13 289

原创 JAVA 职责链模式

文章目录介绍职责链模式实现介绍描述职责链模式设计模式属于行为型模式,为请求创建了一个接受者对象的链,对发送者和接收者进行解耦。特点 优点:实现解耦,提高系统的灵活性,简化了对象,使对象不需要知道链的结构,可以动态的添加接收者。 缺点:性能会收到影响,当链条过长的时候,因此需要控制最大节点数量,对于循环链条,当出现请求不被处理时候会导致循环调用。 实现原理通常每个接收者都包含对另一个接收者的引用,如果一个对象不能处理该请求,就下放到另一个接收者,依次类推。..

2020-05-27 00:13:06 169

原创 JAVA 策略模式

介绍描述策略模式设计模式属于行为型模式,定义了一系列的算法,并将每一个算法封装起来,使每个算法可以相互替代,使算法本身和使用算法的客户端分割开来,相互独立。特点 优点:取代大量的if-else操作,可以自由切换,拓展性好。 缺点:每添加一个策略,就要增加一个类导致策略类过多。 实现原理IStrategy(策略接口角色):用来指定具体的策略算法,策略上下文角色 ConcreteStrategy 实现具体的策略算法。ConcreteStrategy(具体策略实现角色):具..

2020-05-26 23:32:50 185

原创 JAVA 状态模式

文章目录介绍状态模式实现介绍描述状态模式设计模式属于行为型模式,对于控制一个对象状态转换的条件表达式过于复杂时,将其特定的状态相关的行为都放入一个对象中,通过定义新的状态类去改变当前上下文状态从而改变它的相关行为。特点 优点:取代大量的if-else操作,多个环境对象共享一个状态对象,减少相互间的依赖。 缺点:增加系统类和对象的个数,导致系统维护难度增加。 实现原理将同一个状态对象传入,在不同的状态中,改变实例变量的值。Context(上下文类):在环..

2020-05-25 01:26:54 216

原创 JAVA 观察者模式

文章目录介绍观察者模式实现介绍描述观察者模式设计模式属于行为型模式,即当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新,介于对象之间多对一依赖的一种设计方案。特点 优点:观察者和被观察者是抽象耦合的,通过集合的方式来管理。 缺点:观察者较多时候都通知到会花费很多时间。 实现原理Subject:就是定义相关观察者的增删改操作,“被观察”的角色需要继承实现其具体操作,同时把所有观察者对象的引用保存在一个集合中。Observer:是抽象的..

2020-05-25 00:53:04 172

原创 JAVA 迭代器模式

介绍描述迭代器模式设计模式属于行为型模式,通过提供一种方法顺序访问聚合对象中的各个元素,而又不需要明确暴露该对象的内部实现,不需要知道集合底层的实现。特点 优点:支持以不同的方式遍历,新的数据聚合类和迭代器的拓展方便,形成存储数据+遍历方式的解偶。 缺点:职责分离导致新的数据类的遍历可能需要新的遍历迭代类与之对应,增加了复杂性。 实现原理迭代器角色(Iterator):迭代器角色负责定义访问和遍历元素的接口。具体迭代器角色(Concrete Iterator):具体迭..

2020-05-23 19:43:16 173

原创 JAVA 备忘录模式

文章目录介绍备忘录模式实现介绍描述备忘录模式设计模式属于行为型模式,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。特点优点:可以恢复到之前的状态,实现了信息的封装。缺点:被备忘的类的成员变量过多,势必会占用比较大的资源,而且每一次保存都会消耗一定的内存。实现原理备忘录类Memento,专门存储当前被备忘对象的某些状态,维护CareTaker类存储多个Memento,来方便获取备忘的信息。适用 需要保存/恢复

2020-05-20 23:12:27 170

原创 JAVA 中介者模式

文章目录介绍命令模式实现介绍描述中介者模式设计模式属于行为型模式,是作为通信双方的中介,代理双方,用一个中介对象类封装一系列对象之间的交互。特点优点:简化了对象之间打的关系,将系统对象之间的相互关系进行封装,将各个同事类之间的联系进行解耦。缺点:由于封装对象之间的交互关系,导致中介类的逻辑关系变得复杂,系统维护比较困难。实现原理Mediator作为抽象中介者,ConcreteMediator作为具体中介者实现Mediator,需要知道所有的同事类,并且同事类将发送

2020-05-19 23:37:06 170

原创 JAVA 命令模式

文章目录介绍命令模式实现介绍描述命令模式设计模式属于行为型模式,将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。特点优点:消除了请求发送者和具体指定接收者的耦合,让对象之间的调用关系更加灵活、新的关系也更容易添加。缺点:可能导致系统产生许多个接收者类。实现原理当我们调用时,执行的时序首先是调用者类,然后是命令类,最后是接收者类。也就是说一条命令的执行被分成了三步,即调用者->命令-&g

2020-05-19 10:50:14 278

原创 JAVA 模板模式

文章目录介绍模板模式实现介绍描述模板模式设计模式属于行为型模式,是指一个抽象类公开定义了执行它的方法的模板,它的子类可以按要求重写方法实现,但调用将以抽象类中定义的方式进行。(例如:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构的条件下,就可以重定义该算法的某些特定步骤)。特点优点:封装不变部分,扩展可变部分、提取公共代码、行为由父类控制,子类实现。缺点:每一个不同的实现都需要一个子类来实现,导致类的个数增加。实现原理行为由抽象

2020-05-19 09:53:44 256

原创 JAVA 代理模式

文章目录介绍代理模式静态代理动态代理Cglib代理介绍描述代理模式设计模式属于结构型模式,为当前类对象提供一个替身(一个类代表另一个类的功能),通过替身来控制对这个对象的访问,这样我们就可以在目标对象调用的基础上增加额外的功能。特点优点:拓展性强、能够协调调用者和被调用者。缺点:中间增加的代理对象可能导致请求处理速度的变慢、实现代理的额外根据其不同方式可能实现复杂。实现原理增加中间层去取代直接调用的方式,而代理类实现与目标对象组合。适用 应用远.

2020-05-16 21:36:28 135

原创 JAVA 享元模式

介绍描述享元模式设计模式属于结构型模式,主要用于减少创建对象的数量,以减少内存占用和提高性能,通过共享技术实现相同或相似对象的重用。即尝试重用现有的同类对象,如果未找到匹配的对象,才回去创建新对象。特点优点:大大减少对象的创建,降低系统的内存,使效率提高。缺点:提高了系统的复杂度,需要分离出外部状态和内部状态。实现原理用 HashMap或其他去存储创建出的这些对象​,根据条件查看是否可以利用现有对象,如若不可则去创建​​​​​​。抽象享元角色(FlyWeight):是作为产品

2020-05-15 14:12:14 123

原创 JAVA 外观模式

文章目录介绍外观模式实现介绍描述外观模式设计模式属于结构型模式,是隐藏系统的复杂性,并向客户端提供了一个可以访问系统的接口,涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统方法的委托调用。当一个系统子系统越来越多,访问也将越来越复杂,当系统内部发生改变,客户端也要改变,违背了“开闭原则”和“迪米特法则” ,所以提供一个统一的接口,可以降低系统的耦合度。特点优点:对客户而言操作起来更加容易,降低了复杂性。缺点:新的子类增加,就可能导致修改外观类。实现...

2020-05-15 13:09:07 236

原创 JAVA 组合模式

文章目录介绍组合模式实现介绍描述组合模式设计模式属于结构型模式,是用于把一组相似的对象当作一个单一的对象,将对象组合成树形结构以表示“部分-整体”的层次结构。特点优点:高层模块调用简单,且节点可以任意增加。缺点:难以限定新构建的类型。实现原理抽象组件(Component)角色:为组合对象和叶子对象声明公共的接口,让客户端可以通过这个接口来访问和管理整个对象树,并可以为这些定义的接口提供缺省的实现。 组合对象(Composite)角色:通常会存储子组件(组合对象、

2020-05-15 12:40:15 178

原创 JAVA 装饰者模式

介绍描述装饰器模式设计模式属于结构型模式,是允许向一个现有的对象添加新的功能,进行多次包装,同时又不改变其结构。特点优点:装饰模式可以动态扩展一个实现类的功能。缺点:多层装饰比较复杂。实现原理通常为了扩展一个类的功能经常使用继承方式实现,随着功能的增多,就会导致子类太多,为了在不增加许多子类的情况下扩展类,将拓展功能设置为新的类通过继承/实现 + 组合原本类的方式实现拓展。适用 扩展一个类的功能。 动态增加功能,动态撤销。 装饰者模式实现第一步:创

2020-05-14 13:40:37 148

原创 JAVA 桥接模式

文章目录介绍桥接模式实现介绍描述桥接模式设计模式属于结构型模式,是用于把抽象化和实现化进行解耦,通过提供之间的桥接结构,使得二者独立变化。特点优点:抽象和实现分离、拓展能力强。缺点:桥接模式对于增加系统的理解和设计难度。实现原理原本的继承方式拓展中可能会造成大量类的生成,且扩展不灵活,将抽象部分于实现部分分离,通过抽象类依赖实现类,做到分离,减少之间的耦合。适用 适合不希望通过继承或者多层次继承导致类个数累加的系统,采用桥接模式。 一个类存在两

2020-05-14 11:47:26 151

原创 JAVA 适配器模式

介绍描述适配器模式设计模式属于结构型模式,是作为两个不兼容的接口之间的桥梁,即将一个现存的接口适配为期待的另一个接口。特点优点:适配器模式可以让两个没有任何关系得类在一起运行、提高了类的复用、增加了类的透明度、灵活性好。缺点:过多地使用适配器,会让系统非常零乱,不易整体进行把握。适用 需要修改了一个已经投产中的接口。 系统需要使用现有的类,而此类的接口不符合系统的需要。 适配器模式最好在详细设计不要考虑它,它不是为了解决还处在开发阶段的问题,而是解决正在服役

2020-05-11 21:33:03 152

原创 JAVA 建造者模式

介绍描述建造者模式设计模式属于创建型模式,通过多个简单的对象去简化一个复杂对象的构建。通过构建和装配的解耦,不同的构建器,也可以做出不同的对象,相同的构建器由于装配顺序的不同也可以做出不同的对象,也就是实现了构建算法、装配算法的分离,实现更好的复用。同时用户只需要指定复杂对象,而不用明确具体操作。特点优点:封装性好,创建和使用分离,无需修改源代码,一定程度上的解耦,方便代码的维护。缺点:该类产品必须有相同点,使用范围有限,建造者模式创建出的对象其组成部分基本一致,若所构建对象之间差异较大

2020-05-11 00:17:10 243

原创 JAVA 原型模式

原型模式文章目录原型模式介绍原型模式的几种实现方式原型模式(浅拷贝)原型模式(深拷贝)介绍描述原型模式设计模式属于创建型模式,是用于创建重复的对象,对于当前指定对象创建对象种类,并且拷贝这些原型,创建出新的对象。该模式一般适用于一个类直接创建对象所带来的代价比较高时,通过对已有缓存对象的克隆,在下一个次独立创建时返回他的克隆,以保证性能。特点性能有所提高,避免了通过new构造函数多次创建的过程。实现原理JAVA中Object类是所有类的根类,提供了一个

2020-05-09 23:05:11 110

原创 JAVA 单例模式

单例模式目录单例模式介绍单例模式的几种实现方式饿汉式(静态常量、静态代码块)懒汉式(线程不安全)懒汉式(线程安全)双检锁/双重校验锁(线程安全)静态内部类(线程安全)枚举(线程安全)总结介绍描述单例模式设计模式属于创建型模式,它提供了一种创建对象的最佳方式,对于一个单一的类,该类负责创建自己的对象,并且确保只有单个对象被创建,对外提供了访问其唯一对象的一种方式。特点只能有一个实例、必须自己创建自己的唯一实例、必须给所有其他对象提供这一实例。

2020-05-08 22:57:36 123

原创 Web前端性能优化

Web前端性能优化资源合并压缩Html压缩Css压缩文件合并压缩

2020-03-21 10:40:29 325 1

原创 HTTPS原理解析

HTTP与HTTPS区别http发送数据以明文方式发送,存在被窃取,HTTPS是指使用http与ssl协议,访问过程会先和服务端建立链接,返回服务器网站证书,确认无误。对称加密原理:存在加密密钥K与解密密钥K一致,加密数据data。 举例:浏览器(C端)向服务端(S端)发送数据,C端使用加密密钥K加密数据转为密文cT,S端接收到cT使用解密密钥K解析。 那么密钥K如何生...

2020-03-14 15:57:33 381 1

原创 JavaScript从当前日期去获取之前的日期和之后的日期

一些标签去注册事件使用的是Jquery。对于时间的获取使用的是JavaScript。可以从当前时间段开始获取前后的一周的时间情况,在点击左右侧按钮的时候会以当前所显示内容为新的时间起点去获取到所对应的上下一周情况。//获取今天的日期var d1 = new Date();//获取从今天开始之后七天的日期var d2 = Next_date(new Date(d1),7);//打印...

2019-01-26 17:43:35 441

myemployees.sql

首先声明,该博客总结知识所参照视频来自bili(https://www.bilibili.com/video/BV12b411K7Zu),在本mysql博客文章中所需sql代码文件,放在此处。

2020-07-14

空空如也

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

TA关注的人

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