谢谢谢谢呵
码龄8年
求更新 关注
提问 私信
  • 博客:13,225
    13,225
    总访问量
  • 45
    原创
  • 1
    粉丝
  • 15
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
加入CSDN时间: 2017-03-14

个人简介:java工程师

博客简介:

谢谢谢谢呵的博客

查看详细资料
个人成就
  • 获得6次点赞
  • 内容获得11次评论
  • 获得8次收藏
创作历程
  • 4篇
    2020年
  • 40篇
    2019年
  • 1篇
    2018年
成就勋章
TA的专栏
  • Java基础知识-Exception
    2篇
  • Java基础知识-Java8
    5篇
  • Java基础知识-集合、映射
    1篇
  • 软件设计师
    1篇
  • java虚拟机学习
    2篇
  • 其他
    1篇
  • spring
    1篇
  • java基础知识
    4篇
  • java设计模式
    25篇
  • WebService
    1篇
  • 协议
    2篇
  • MYSQL
    1篇
  • Java8
    5篇

TA关注的专栏 0

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

兴趣领域 设置
  • 数据结构与算法
    排序算法推荐算法
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

HTTP相关整理

HTTP协议各个版本相关概念及涉及到的其他知识点整理
原创
发布博客 2020.07.22 ·
415 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

从字节码看JVM处理异常及finally模块

JVM异常 在java中,异常分为显示异常和隐式异常两种。显示异常指java应用抛出的异常,程序遇到了无法执行的逻辑,通过throw抛出异常;隐式异常指虚拟机在执行过程中,碰到错误无法执行下去,不得不停止执行,自动抛出异常,比如对象执行方法,结果该对象为Null,那么会出现NPE。 关于异常的内容 异常篇 为什么不能通过异常来处理业务逻辑 异常实例的构建过程十分复杂。在某个方法中生成了异常,一般我们会得到这个异常的栈轨迹,这个内容就是由JVM来生成的。JVM会从当前出现异常的方法开始,逐一向下访问所在线程的
原创
发布博客 2020.07.09 ·
321 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

简单读HashMap源码笔记

package java.util; import java.io.IOException; import java.io.InvalidObjectException; import java.io.Serializable; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import j...
原创
发布博客 2020.02.04 ·
228 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

软件设计师考试重点整理

一个半月完成了软件设计师考前学习,59+65,xmind分享出来,基本一边做笔记,一般把重点弄透很容易过。有需要的或者要试题的可留邮箱。 现在有19年上半年之前的试题。 https://www.processon.com/view/link/5e216dcee4b006a43adef7c0 ...
原创
发布博客 2020.01.17 ·
503 阅读 ·
2 点赞 ·
7 评论 ·
2 收藏

设计模式学习-访问者模式

访问者模式 在处理某些容器类对象结构的时候,对象结构中存储了多种不同的对象信息,并且针对元素的处理方式并不唯一,可能需要提供多种不同的处理方式,也有可能增加新的处理方式。对于这种情景,可以考虑使用访问者模式。 访问者是一种比较复杂的行为型设计模式,它包含了访问者和被访问元素部分。在使用访问者模式的时候,被访问元素通常不是单独存在的,他们存储在一个集合中,这个集合被称为“对象结构”,访问者通过遍历对...
原创
发布博客 2019.07.26 ·
114 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

设计模式学习-模板方法模式

模板方法模式 在我们的功能设计中,通常一些功能是由一系列步骤来完成的,这些步骤的次序基本一致,但是它们的实现可能完全不同。比如我们打算买一部手机,那么流程基本为浏览、下单、支付、收货四个步骤,浏览下单可以线上下下,支付可以现金、转账,收货可以立刻取货、邮寄等。可以看出,步骤是固定的,但是实现方法多样。 那么为了提高代码的复用性和灵活性,我们可以使用模板方式来设计此类功能。模板方法模式是结构最简单的...
原创
发布博客 2019.07.26 ·
143 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

设计模式学习-策略模式

策略模式 策略模式一般用项目中算法功能的切换。对于解决某一个问题,假设存在一个算法族,如果希望某些时刻从其中选择一个合适的算法来实现功能,那么可以选择使用策略模式。策略模式将算法的表示功能和使用功能相分离,可以很方便的更换算法或者增加新的算法,符合开闭原则在实际应用中也比较常见。 策略模式的UML类图和状态模式比较相似,但两者在使用上存在根本的区别。状态模式是根据传入的参数,被动的选择合适的算法执...
原创
发布博客 2019.07.26 ·
137 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

设计模式学习-状态模式

状态模式 在某些情况下,一些对象存在着比较多的状态,在不同的状态下,执行不同的方法,通常的解决办法就是为每个状态编写一个if…条件进行判断。当状态比较多,并且行为复杂的时候,会导致代码的可维护性、灵活性、扩展性降低,并且在增加新的状态的时候,代码也要随之修改,违背了开闭原则。 状态模式被设计来解决系统中复杂对象的状态变化以及不同状态下行为的封装问题。当系统中的某个对象存在多种状态,并且这些状态之间...
原创
发布博客 2019.07.23 ·
110 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计模式学习-观察者模式

观察者模式 在软件系统中,各个对象并不是孤立存在的,经常会出现一个对象的状态发生了变化,会导致其他一个或者多个存在依赖关系的对象跟随变化的场景。观察者模式用来描述对象之间的依赖关系,为实现多个对象之间的联动提供了一种解决方案。 定义 观察者模式定义了一种一对多的依赖关系,每当一个对象的状态发生变化的时候,其他依赖对象都会得到通知并发生相应变化。 结构 观察者模式通常包含观察者和观察目标两个部分。 ...
原创
发布博客 2019.07.21 ·
145 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IDEA快捷键整理

ctrl + ↑ 向上滚动一行 ctrl + ↓ 向下滚动一行 ctrl + ← 跳转单词左侧 ctrl + → 跳转单词右侧 ctrl + - 收缩代码 ctrl + = 展开代码 ctrl + [ 跳转代码块起始 ctrl + ] 跳转代码块结束 ctrl + delete 删除光标至单词结尾内容 ctrl + end 跳转到文件尾 ctrn + h...
原创
发布博客 2019.07.11 ·
128 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java8-Stream

Stream流 Stream流是Java API的新成员,它允许声明性方式处理数据集合,可以把它们看成遍历数据集的高级迭代器。 通常在集合的相关操作中,一般有存储、迭代、计算三个方面的功能,在Java8之前一般是用集合进行存储,用迭代器进行外部迭代和计算,而Stream的引入,是将计算的功能拆分出来。 集合和流的区别 粗略地说,集合与流之间的差异就在于什么时候进行计算。集合使用的时候所有元素都在内...
原创
发布博客 2019.07.09 ·
186 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java8-方法引用

方法引用 方法引用让你可以重复使用现有的方法定义,并像Lambda一样传递它们。方法引用可以被看作特定Lambda表达式的一种简单写法。 它的基本思想是,如果一个Lambda表达式的内容是调用一个方法,那么可以直接通过“类名+方法名”的方式来使用。当你需要使用方法引用时,目标引用放在分隔符::前,方法的名称放在后面,不需要括号。 方法引用的分类 方法引用主要有三类。 指向静态方法的方法引用 In...
原创
发布博客 2019.07.09 ·
221 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java8-新增特性整理

lambda表达式 Lambda表达式 ::方法引用 方法引用 Stream 新增Stream流迭代功能及相关接口 新的日期和时间API支持 LocalDate 日期 LocalTime 时间 LocalDateTime 整合 Instant 时间戳 Duration 区间 Periond 区间 TemporalAdjuster 操作日期、时间函数接口 新增Optional类 Optional...
原创
发布博客 2019.07.09 ·
133 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计模式学习-备忘录模式

备忘录模式 备忘录模式是为了实现系统中的撤销操作而设计的,当用户操作失误需要撤销操作返回到某个历史状态时可以去除实现保存的历史状态来覆盖当前状态。 备忘录模式本身比较简单,在java网络应用中用的也比较少,因此加单介绍一下,并写了一个最简单的实例。 定义 在不破坏封装的前提下捕获一个对象的内部状态,并且在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。 结构 Originato...
原创
发布博客 2019.06.27 ·
164 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计模式学习-中介者模式

中介者模式 对于存在着多对多的复杂调用关系的系统,中介者模式提供了一种解决这种复杂关系的处理方案。假设一个系统中有4个对象相互作用,其中一个对象发生了变化,其他3个对象都要执行某个方法:如果每个对象都关联3个对象,那么关联关系将比较复杂,并且难以维护。我们可以设置一个中介者类,关联所有对象,当一个对象发生变化时,由它对其他3个对象进行通知,化繁为简。 通过中介者类的中转作用,各个同事对象之间不...
原创
发布博客 2019.06.27 ·
139 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

设计模式学习-迭代器模式

迭代器模式 迭代器模式一般设计用来对一个容器对象进行遍历,通过引入一个迭代器,将容器的存储功能和遍历功能进行分离,容器只有存储功能,遍历功能由迭代器来完成,进行了职责的分离,更加符合单一职责原则。 在使用迭代器模式的过程中,除了功能的分离,还有另一个好处:当一个容器接口有不同的实现的时候,为每一个实现提供了一个统一的遍历接口,这样一方面具体实现不需要对外暴露它的内部结构,另一方面调用方也不用关系实...
原创
发布博客 2019.06.22 ·
166 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java-内部类

内部类 内部类是定义在另一个类内部的类。 分类 普通内部类:在一个类中定一个类,属于外部类的成员。 // 代码基于java 1.8 // 内部类对象引用外部类对象 Outer.this // 创建内部类对象 outerObject.new InnerClass{construction parameters) public class Outer { private String name ...
原创
发布博客 2019.06.06 ·
91 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Lambda表达式的序列化

JDK中函数接口(未继承Serializable接口)的序列化 Comparator中代码 ... public static <T> Comparator<T> comparingInt(ToIntFunction<? super T> keyExtractor) { Objects.requireNonNull(keyExtractor); ...
原创
发布博客 2019.05.30 ·
990 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java-Lambda表达式

介绍 在Lambda出现之前的函数编程中,通过单个接口表示类型,实例作为函数对象,表示函数或者要采取的动作。而使用函数对象的方式往往是通过声明匿名类,示例如下 Thread thread = new Thread(new Runnable() { @Override public void run() { System.out.println("匿名类"); } }); 上面的代码中,...
原创
发布博客 2019.05.30 ·
188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spring中动态选择实现类

在spring中当一个接口有多个实现类的时候,通过创建简单工厂类,根据传入的不同的参数获取不同的接口实现类。 public interface ExecuteService { ExecuteEnum getCode(); // 业务方法 void execute(); } @Service public class FirstExecuteServiceImpl imp...
原创
发布博客 2019.05.22 ·
2261 阅读 ·
0 点赞 ·
4 评论 ·
4 收藏
加载更多