3 宋家欢_Daniel

尚未进行身份认证

一个逐步完善自己的人,对技术精益求精,严格要求自己;对生活的,充满希望,相信明天的生活更精彩;对困难,有各种狭路相逢的精神,你不干掉他,他就干掉你。总结一句话:干,就完了!!!

等级
TA的排名 4k+

Lambda表达式解析

前言Lambda表达式简介这几天在学习Lambda表达式,说实话,这部分的内容还是比较多的,如果想学习的比较细致,比较深入,还是需要花费一些时间的。下面用实例为大家做Lambda表达式的解析(其中加入了一些自己的理解,标注在了注释中)...

2020-05-24 23:08:38

java设计模式之建造者模式

前言什么是建造者模式?建造者模式又叫生成器模式,可以将复杂对象的建造过程抽象出来,即抽象类,使这个抽象过程的不同实现方法可以构造出不同属性的对象。一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的细节。以盖房子为例,大致分为三部分:打地基、砌墙、封顶传统模式:AbstractHouse类public abstract class AbstractHouse { //打地基 public abstract void b

2020-05-17 22:40:47

java设计模式之原型模式

前言什么是原型模式?即:①用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新对象。②允许一个对象在创建另外一个可定制的对象,无需知道创建的细节原理:通过将一个原型对象传给要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝他们自己来实施创建,即对象.clone()。示例:克隆羊问题有一只羊,名字,年龄,颜色,创建和这只羊属性完全相同的5只羊。传统方式:Sheep类public class Sheep { private String name; priva

2020-05-09 21:22:36

java设计模式之抽象工厂模式

前言什么是抽象工厂?简介:定义了一个interface用于创建相关或有依赖关系的对象簇,并且无需指明具体的类。它可以将简单工厂模式和工厂方法模式进行整合。将工厂抽象成两层,抽象工厂(本文中的AbsFactory接口)和具体实现的工厂子类(BJFactory类和TJFactory类)。Pizza类//抽象类Pizzapublic abstract class Pizza {...

2020-04-29 15:29:46

Java设计模式之工厂方法模式

前言什么是工厂方法模式?示例:新需求:客户在点pizza时,可以点不同口味的pizza,比如:天津的奶酪pizza,天津的胡椒pizza,北京的奶酪pizza,北京的胡椒pizza等等。工厂方法的设计方案:将pizza项目的实例化功能抽象成抽象方法,在不同的口味点餐子类中具体实现。定义一个创建对象的抽象方法,由子类决定要实例化的类。工厂方法模式将对象的实例化推迟到了子类去实现。...

2020-04-28 10:42:35

java设计模式之简单工厂模式

前言示例:pizza店做pizza的过程:种类:GreekPizza,CheesePizza等制作过程:prepare,bake,cut,box完成pizza店订购的功能首先介绍传统模式:Pizza类//抽象类Pizzapublic abstract class Pizza { //pizza的名字,具体的pizza protected String na...

2020-04-27 19:07:46

java设计模式之单例模式

前言单例模式有八种方式,下面逐一分析:第一种:饿汉式(静态常量)

2020-04-26 21:27:31

设计模式七大原则之合成复用原则

简介原则上尽量使用合成/聚合,而尽量避免继承(耦合度太高)。以下是继承方式(此方式耦合度太高)称为is-a的关系:以下几种为比较弱的耦合关系,称为has-a的关系:依赖关系(B类依赖A类):聚合关系(将A类聚合到B类中):组合关系(将A类组合到B类中),B类中,在构建属性的时候,就new出来对象了:核心思想:将应用中需要变化的地方独立出来,避免和不需要变...

2020-04-26 11:50:57

设计模式七大原则之迪米特法则

简介迪米特法则又叫“最少知道原则”,即一个类对自己依赖的类知道的越少越好(使他们之间有最低耦合度),对于依赖的类不管多复杂,都尽量把逻辑封装在类内部,对外出了提供public方法,不泄露任何的信息,最简单的说就是:只与直接的朋友通信那么,什么又叫“直接的朋友”呢?每个对象都会与其他的对象之间产生耦合关系,只要两个对象之间存在耦合关系,我们就说他们是朋友;耦合有很多种方式,如:继承、依赖、...

2020-04-26 08:44:51

设计模式七大原则之开闭原则

简介开闭原则是编程过程中最基础、最重要的原则,前面讲到的几个原则,也都是为了实现开闭原则。那么他是如何开放,又是如何关闭的呢?一个软件实体,如类:模块和函数应该对扩展开放(提供方),对修改关闭(使用方)。当软件需求变化时,尽量通过扩展软件实体来达到目的,而不是通过修改已有的代码来实现变化。编程中遵循其他原则,以及使用设计模式的目的,就是遵循开闭原则。实例展示最初代码的逻辑:...

2020-04-25 23:12:50

设计模式七大原则之里氏替换原则

简介里氏替换原则产生的原因:继承在给编程带来方便的同时,也带来了一些弊端。使用继承会给程序带来侵入性,使程序的可移植性降低,增加了很强的耦合性,如果一个类被其他的类所继承,当这个类需要进行修改时,必须要考虑到所有的子类是不是会受到影响,并且父类修改后,所有的子类功能可能会产生故障。这时候,就用到了里氏替换原则,他可以让我们正确的使用继承关系。...

2020-04-25 08:53:35

CentOS8安装Docker

前言在进行了无数次的安装之后,在加上查找资料,总算是解决了这个问题。分享①先配置阿里云的镜像,这样的话,下载的速度还是比较快的(PS:用国外的服务器来下载,太耗费时间了)yum -y install wget && \cd /etc/yum.repos.d/ && \wget http://mirrors.aliyun.com/repo/Centos-8...

2020-04-21 08:21:09

XShell实现远程Linux与本地Windows的文件互传

前言这几天在进行Linux与Windows实现文件互传的时候,由于没有安装xftp(PS:真心不想安装,不想用),想要将Linux上的文件下载到Windows本地,还是很费劲的,于是就学习了一番,现在可以熟练的实现文件互传了。介绍①保证XShell已经与Linux实现连接(ssh + ip地址,即可实现连接)②在XShell中先进行一点点小小的配置。(我的是XShell6,不同的版本,以下...

2020-04-15 00:19:55

配置SpringMVC返回json字符串时报错:AnnotationMethodHandlerAdapter与MappingJacksonHttpMessageConverter的问题

springmvc-context.xml配置文件中的代码:最初的配置代码:<bean class="org.springframework.web.servlet.mvc.annotation.**AnnotationMethodHandlerAdapter**" > <property name="messageConverters" > ...

2020-04-13 17:34:21

IDEA控制台中文乱码

①修改IDEA的配置文件:找到idea的安装目录,在bin文件夹下找到idea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别在这两个文件的末尾处添加一行代码:-Dfile.encoding=UTF-8我安装目录下的bin文件夹:②打开idea,进行后续操作:③在部署tomcat的时候,添加如下内容:-Dfile.encoding=UTF-8...

2020-04-13 11:53:16

Nginx学习总结

简介什么是Nginx?Nginx 是高性能的 HTTP 和反向代理的服务器,处理高并发能力是十分强大的, 能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。详尽了解Nginx能做些什么呢?正向代理反向代理负载均衡动静分离搭建高可用集群①正向代理正向代理:如果把局域网外的Internet看成是一个巨大的资源库,那么局域网中的客户端要访问Internet,...

2020-04-12 20:43:36

Nginx编译错误:objs/src/os/unix/ngx_user.o

在运行make语句进行编译的时候出现了这个错误提示:下面来说一下解决方案: ①在nginx的解压路径下,运行:cd objs②编辑Makefile文件,删除其中的-Werror上述步骤操作完成之后,在nginx解压路径下,再次运行make命令,就可以成功了。PS:可能会遇到另一个问题,可参考这篇文章...

2020-04-11 15:48:25

Nginx编译错误:objs/src/http/ngx_http_script.o

nginx运行make命令出现如下错误提示:解决方案:①在nginx的解压目录下,进入如下目录:cd src/os/unix②编辑ngx_user.c文件,将下面的内容进行注释即可。再次运行make命令就不会出错了!...

2020-04-08 16:55:44

Nginx运行make && make install编译提示:cannot update read-only repo

Linux运行make命令进行编译的时候,显示一下错误:解决方案yum -y install gcc automake autoconf libtool make注:如果还是有个别问题,可以参考下面的文章,进行以下操作之后,问题就可以解决了。Linux运行命令,提示:no acceptable C compiler found in $PATH...

2020-04-07 08:34:39

Nginx运行命令,提示:no acceptable C compiler found in $PATH

前言在运行./configure命令的时候,提示如下错误:分析出现这种情况的原因是没有安装GCC套件,进行安装即可。yum install gcc //安装命令在次运行./configure命令就会成功了!...

2020-04-06 19:20:25

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。