- 博客(26)
- 收藏
- 关注
原创 聊聊Java中的泛型
聊聊Java中的泛型文章目录聊聊Java中的泛型参考资料一、概述1. 泛型的定义1.1 定义1.2 常见形式2. 为什么需要泛型3. 泛型的优点4. 泛型的使用4.1 泛型类4.2 泛型接口4.3 泛型方法4.4 泛型实际类型的确定时机二、泛型的扩展2.1 Java泛型的擦除与补偿1、泛型参数的擦除与补偿2、泛型参数的擦除规则3、泛型参数擦除的原因2.2 泛型参数擦除所带来的问题1、强制类型转换问题2、引用传递的问题3、继承中方法重写的问题4、不能用instanceof判断泛型参数5、泛型类中stati
2021-09-08 19:31:01 655
原创 23种设计模式之桥接模式
23种设计模式之桥接模式文章目录23种设计模式之桥接模式参考资料一、简介定义特点通用类图优点应用场景二、桥接模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义将抽象部分与它的行为部分实现分离,保持各个部分的独立性和其功能的可扩展性抽象:对事物的抽象 (名词)接口:对行为的抽象 (动词)特点桥接模式是一种结构型设计模式通用类图桥接
2021-05-31 10:42:45 398
原创 23种设计模式之享元模式
23种设计模式之享元模式文章目录23种设计模式之享元模式参考资料一、简介定义特点通用类图优点缺点应用场景二、享元模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义运用共享技术对大量细粒度对象进行复用。通过共享已经存在的对象、避免大量相似类的开销,从而提高系统资源的利用率。享元模式中存在以下两种状态:内部状态,指不会随着环境的改变而改变的可
2021-05-27 10:54:44 323
原创 23种设计模式之解释器模式
23种设计模式之解释器模式文章目录23种设计模式之解释器模式参考资料一、简介定义特点通用类图优点缺点应用场景二、解释器模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义给定一门语言,定义它的文法表示,再设计一个解析器来解释语言中的句子。即自定义一种文法来解释代码句子。“文法”指语言的语法规则,“句子”是语言集中的元素。特点解释器模式是一种
2021-05-22 10:02:26 342
原创 23种设计模式之状态模式
23种设计模式之状态模式文章目录23种设计模式之状态模式参考资料一、简介定义特点通用类图优点缺点应用场景二、状态模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义允许一个对象在其内部状态发生改变时改变其行为。特点状态模式是一种行为型模式。状态模式把一个对象因受环境改变而改变的行为包装在不同的状态对象里。通用类图状态模式的主要角色:
2021-05-16 15:11:03 363
原创 23种设计模式之访问者模式
23种设计模式之访问者模式文章目录23种设计模式之访问者模式参考资料一、简介定义特点通用类图优点缺点应用场景二、访问者模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义在不改变集合元素的前提下,为集合中的每个元素提供多种访问操作,即可以扩展操作元素的功能。特点访问者模式是一种行为型模式访问者模式将数据结构与数据操作分离,解决数据结构和操作耦
2021-05-08 10:29:28 134
原创 23种设计模式之备忘录模式
23种设计模式之备忘录模式文章目录23种设计模式之备忘录模式参考资料一、简介定义特点通用类图优点缺点应用场景二、实现分类标准备忘录模式多状态多备份的备忘录模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义记录一个对象的内部状态,并在该对象之外保存这个状态,当需要时能将该对象恢复到原先保存的状态。特点备忘录模式是一种行为型模式通用类图备
2021-05-02 22:13:43 117
原创 23种设计模式之门面模式
23种设计模式之门面模式文章目录23种设计模式之门面模式参考资料一、简介定义特点通用类图优点缺点应用场景二、门面模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义为多个复杂的子系统提供一个一致的接口,使调用端只能跟该接口进行交互,而无需关心子系统的内部细节。(门面模式好比你要去注册公司,自己办理有很多流程,最简单的方法就是找代理注册,你跟代理注册
2021-04-25 17:22:03 308
原创 23种设计模式之观察者模式
23种设计模式之观察者模式文章目录23种设计模式之观察者模式参考资料一、简介定义特点通用类图优点缺点应用场景二、观察者模式JDK内置的观察者模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并被自动更新。(当被观察者的内容发生改变时会通知所有的观察者)特点
2021-04-11 17:08:11 139
原创 23种设计模式之组合模式
23种设计模式之组合模式文章目录23种设计模式之组合模式参考资料一、简介定义特点通用类图优点缺点应用场景二、组合模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义将对象组合成树形结构以表示“部分与整体”的层次结构,使得客户端对单个对象和组合对象的使用具有一致性。特点组合模式是一种结构型模式。组合模式能让客户端以一致的方式处理单独对象和组合对
2021-04-04 16:07:28 399
原创 23种设计模式之迭代器模式
23种设计模式之迭代器模式文章目录23种设计模式之迭代器模式参考资料一、简介定义特点通用类图优点应用场景二、迭代器模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义迭代器模式提供一种方法能访问容器对象中各个元素,而不暴露该对象的内部结构。迭代器是为容器服务的,能容纳对象的所有类型都可以称之为容器,例如Collection集合类型、List类型、S
2021-03-27 21:41:38 340
原创 23种设计模式之适配器模式
23种设计模式之适配器模式文章目录23种设计模式之适配器模式参考资料一、简介定义通用类图特点优点应用场景二、分类类适配器模式对象适配器模式缺省适配器模式类适配器模式对象适配器模式缺省适配器模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义适配器模式是将一个类接口转换为客户端期望的另一个接口,使得原本因接口不兼容的类能协同工作。即让不相关的两个类产生
2021-03-21 19:59:05 511 4
原创 23种设计模式之策略模式
23种设计模式之策略模式文章目录23种设计模式之策略模式参考资料一、简介定义特点通用类图优点缺点应用场景二、策略模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义定义了一系列算法,并将每个算法都封装起来,使它们之间可以相互替换。特点策略模式是一种行为型模式策略模式类似于一个可反复拆卸的插件通用类图策略模式的主要角色:Conte
2021-03-12 22:03:26 250
原创 23种设计模式之装饰模式
23种设计模式之装饰模式文章目录23种设计模式之装饰模式参考资料一、简介定义特点通用类图优点缺点应用场景装饰者模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义动态的给一个对象增加额外的功能。特点装饰者模式是一种结构型模式在对象扩展方面比继承更有弹性装饰者模式是从最里层(被装饰者)开始向外(装饰者)一一执行通用类图主要角色:
2021-03-03 12:40:28 322
原创 23种设计模式之责任链模式
23种设计模式之责任链模式文章目录23种设计模式之责任链模式参考资料一、简介定义特点通用类图优点缺点应用场景二、责任链模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义把请求从链中的一个对象传递给下一个对象,直到请求被响应为止。通过这种方式将请求的发送者和请求的处理者实现解耦。特点责任链模式是一种(对象)行为型模式通用类图主要角色:
2021-02-27 22:02:15 349
原创 23种设计模式之命令模式
23种设计模式之命令模式文章目录23种设计模式之命令模式参考资料一、简介定义特点通用类图优点缺点应用场景二、命令模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义将某个产品的相关操作抽象成命令,由命令连接调用者和实现者,使命令的调用者与命令的实现者分离。特点命令模式是一种行为型模式通用类图命令模式包含以下主要角色:Command
2021-02-20 14:58:35 390
原创 23种设计模式之中介者模式
23种设计模式之中介者模式文章目录23种设计模式之中介者模式参考资料一、简介定义特点通用类图优点缺点应用场景二、分类标准中介者简单中介者三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义定义一个中介对象来封装原有对象之间的交互,使原有对象之间的耦合松散,且可以独立地改变它们之间的交互。即将多对多依赖关系转为一对多,其中一就是中介者。特点中介者模式
2021-02-15 16:57:15 103
原创 23种设计模式之代理模式
23种设计模式之代理模式文章目录23种设计模式之代理模式参考资料一、简介定义特点优点缺点通用类图应用场景二、实现分类静态代理动态代理Cglib代理三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义代理模式是通过代理类控制目标类的访问。即客户端可以通过代理对象间接地访问目标对象,从而限制、增强或修改目标对象。特点代理模式是一种结构型模式优点
2021-02-07 16:40:18 357 3
原创 23种设计模式之模板方法模式
23种设计模式之模板方法模式文章目录23种设计模式之模板方法模式参考资料一、简介定义特点优点缺点通用类图应用场景二、模板方法模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义定义一个算法的框架,封装步骤相同的部分,将特定(不同)步骤的部分交由子类完成,以此达到代码复用。特点模板模式是一种行为型模式模板方法模式就是抽象类与具体子类之间的协作(
2021-01-31 19:05:58 189
原创 23种设计模式之建造者模式
23种设计模式之建造者模式文章目录23种设计模式之建造者模式参考资料一、简介定义特点通用类图优点应用场景二、建造者模式三、 建造者模式与抽象工厂模式的区别四、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义建造者模式是将一个复杂对象的构建与它的表示分离,使同样的构建过程可以创建不同的表示。特点建造者模式是一种创建型设计模式。客户端只要提供产品基本
2021-01-24 13:25:30 230
原创 23种设计模式之原型模式
23种设计模式之原型模式文章目录23种设计模式之原型模式参考资料一、简介定义原理特点优点缺点通用类图应用场景二、实现分类浅克隆(浅拷贝)深克隆(深拷贝)浅克隆原型模式深克隆原型模式1. 重写clone()方法2. 使用对象的序列化三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义通过克隆原型的实例对象,创建新的对象。原理原型实例实现Cloneab
2021-01-12 16:20:55 113
原创 23种设计模式之抽象工厂模式
23种设计模式之抽象工厂模式文章目录23种设计模式之抽象工厂模式参考资料一、简介定义特点优点缺点通用类图应用场景二、抽象工厂模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义用来生产固定产品线组成的不同产品族,抽象工厂规定生产的产品集合(即固定产品线),产品集合中的每个产品由抽象工厂的子类工厂(产品族工厂)负责生产。固定产品线:由固定产品
2021-01-05 14:54:46 129
原创 23种设计模式之工厂模式
23种设计模式之工厂模式文章目录23种设计模式之工厂模式参考资料一、简介定义特点优点通用类图应用场景二、实现分类静态(简单)工厂模式工厂(方法)模式三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义通过类或方法创建对象特点工厂模式是一种创建型设计模式实现创建者和调用者的分离优点良好的封装性,代码结构清晰,只要知道产品的类名(或约束字符串
2020-12-31 13:20:39 301
原创 23种设计模式之单例模式
23种设计模式之单例模式文章目录23种设计模式之单例模式参考资料一、简介定义特点优点缺点通用类图使用场景二、实现方式饿汉式懒汉式DCL(Double Check Lock)静态内部类枚举三、总结参考资料Java设计模式:23种设计模式全面解析(超级详细)韩顺平老师的Java设计模式(图解+框架源码剖析)秦小波老师的《设计模式之禅》下文如有错漏之处,敬请指正一、简介定义一个类只存在一个实例对象,并且自行实例化并向全局提供一个获取该实例的方法。特点单例模式是一种创建型模式构造
2020-12-23 14:47:27 105
原创 聊聊Java中的字符串
文章目录参考资料1、字符串1.1 字符串的定义1.2 字符串的创建字符串字面量new关键字总结2、字符串池定义字符串池的设计思想字符串池的应用字符串池存放的是字符串对象还是字符串对象的引用字符串池的存放位置StringTable的参数设置3、字符串池&常量池2.1 字符串池2.2 常量池2.3 区别4、字符串的基本特性5、字符串的内存分配6、字符串的拼接操作常量+常量常量引用+常量引用变量+常量总结字符串拼接操作与StringBuilder的append()效率对比new String("a")+n
2020-10-07 16:34:29 669 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人