浅析设计模式第六章之装饰模式
修饰模式理解起来还是相对比较简单的,就增加功能来讲,装饰模式可以比设计为子类的方式更为灵活,能让对象专注于自己核心职责,其余的事情交给修饰类来负责。 装饰模式属于七个结构型模式之一,其余六个是: 适配器模式 – Adapter ...
修饰模式理解起来还是相对比较简单的,就增加功能来讲,装饰模式可以比设计为子类的方式更为灵活,能让对象专注于自己核心职责,其余的事情交给修饰类来负责。 装饰模式属于七个结构型模式之一,其余六个是: 适配器模式 – Adapter ...
一、hashCode 相等两个类一定相等吗?equals 呢? 在设计之初,hashCode 与 equals 就是相辅相成的,单独拿出一个方法对对象相等的讨论都是耍流氓。 hashCode 和 equals 这两个方法协同工作用来判断两个...
本文主要来自于孤尽老师的《码出高效》和方腾飞老师等《Java 并发编程的艺术》两本书中关于线程池的笔记总结,侵删。 一、进程、线程、线程池的定义 进程 定义 进程是程序的一次执行,是一个程序及其数据处理在处理机上顺序执行时所发生的活动,是具...
一、前提 作为一名 Java 程序员,写了一定的程度的业务代码之后,最需要了解的就是 Java 的运行机制以及一些底层原理,比如 JVM 的一些核心知识,比如并发编程的各种底层类的底层原理,这些知识对你的跳槽找工作面试以及工作过程中对业务能...
通过上一篇《浅析Java反射系列相关基础知识(上)之类的加载以及反射的基本应用》文章我们知道每当要加载一个 class 的时候,JVM(Java Virtual Machine,Java虚拟机)就为其创建一个 Class 实例并关联起来,通...
在说栈之前,离不开线性表的这一数据结构的概念,毕竟栈、队列等其实都是一种特殊的线性表而已,它们跟线性表一样都有前驱后继关系,特殊之处只不过在于限制了这个线性表的插入或者删除位置。 一、线性表相关基础知识回顾 1.线性表(List)的定义: ...
Fork/Join框架是Java7提供了的一个用于并行执行任务的框架,是一个把大任务分割成若干个小任务(工作窃取算法),最终汇总每个小任务结果后得到大任务结果的框架。 Fork: 把一个大任务分成若干个子任务进行执行,设置一个阀值,判断任务...
1.[强制] 避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。 老四附言: 老四之前在文章《Java面向对象之static关键字类成员浅析》中也提及到过: 类变量可以直接通过类来访问,即&...
对象序列化的目标(或者说为什么要有序列化这种东西)及意义: 对象序列化的目标是将对象保存到磁盘中或者允许在网络中可以直接传输对象。将对象序列化以后,无论是磁盘存储还是网络传输,对方拿到序列化之后的二进制流都可以进行反序列化从而将其恢复成原来...
java中的异常处理是大部分程序员积攒多年的痛点,本章主要涉及如何定义、捕获、处理异常事件,如何以合理的日志结构保存出错现场信息,以便快速定位问题。开始浅析之前老四先来带领大家再来梳理一遍java异常的基础知识。 异常分两种大的异常类型,运...