摘要:`GC Garbage Collection Java GC`,就不需要再手动的去控制内存的释放。 在阅读之前需要了解的相关概念: 堆内存分为新生代和老年代,新生代中又分为 个 区域 和 个 区域。 一、什么是GC(Garbage Collection) 垃圾收集, 提供的 可以自动监测对象是否超过 阅读全文
posted @ 2019-12-31 22:33 沐晨_li 阅读 (10) 评论 (0) 编辑
摘要:`Java` 的运行时数据区域分为五大数据区域。这些区域各有各的用途,创建及销毁时间。如下图所示,其中方法区和堆是所有线程共享的,栈,本地方法栈和程序虚拟机则为线程私有的。 根据 虚拟机规范, 虚拟机管理的内存分为 方法区、堆、虚拟机栈、本地方法栈、程序计数器栈 五大区域。 程序计数器(Progra 阅读全文
posted @ 2019-12-18 16:42 沐晨_li 阅读 (13) 评论 (0) 编辑
摘要:首先给出定义, 内存模型( , )是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异的,保证了 程序在各种平台下对内存的访问都能保证效果一致的机制及规范。 在弄懂 之前,我们要先了解下 和内存是如何交互的。 CPU和高速缓存以及内存(主存)的交互 从图中可以看出在多 的系统中,每个 都有都 阅读全文
posted @ 2019-12-17 17:33 沐晨_li 阅读 (20) 评论 (0) 编辑
摘要:`Netty NIO TCP UDP NIO Netty Netty NIO`框架构建。 利用 高级网络的能力,隐藏其背后的复杂性而提供一个易于使用的 构建一个客户端/服务端,其具有高并发、传输快、封装好等特点。 高并发 是一款基于 (`Nonblocking I/O IO BIO Blocking 阅读全文
posted @ 2019-12-14 22:10 沐晨_li 阅读 (17) 评论 (0) 编辑
摘要:如何分别用基于贫血模型的传统开发模式,以及基于充血模型的 开发模式,设计实现一个钱包系统。 钱包业务背景介绍 一般来讲,每个虚拟钱包账户都会对应用户的一个真实的支付账户,有可能是银行卡账户,也有可能是三方支付账户(比如支付宝、微信钱包)。为了方便后续的讲解,我们限定钱包暂时只支持充值、提现、支付、查 阅读全文
posted @ 2019-11-30 22:20 沐晨_li 阅读 (269) 评论 (0) 编辑
摘要:所谓 ,翻译过来就是原子。原子被认为是操作中最小的单位,一段代码如果是原子的,则表示这段代码在执行过程中,要么执行成功,要么执行失败。原子操作一般都是底层通过 的指令来实现。而 包下的这些类,则可以让我们在多线程环境下,通过一种无锁的原子操作来实现线程安全。 包下的类基本上都是借助 类,通过 操作来 阅读全文
posted @ 2019-11-29 21:48 沐晨_li 阅读 (10) 评论 (0) 编辑
摘要:在面向对象编程中,抽象类和接口是两个经常被用到的语法概念,是面向对象四大特性,以及很多设计模式、设计思想、设计原则编程实现的基础。比如,我们可以使用接口来实现面向对象的抽象特性、多态特性和基于接口而非实现的设计原则,使用抽象类来实现面向对象的继承特性和模板设计模式等等。 不过,并不是所有的面向对象编 阅读全文
posted @ 2019-11-29 21:38 沐晨_li 阅读 (14) 评论 (0) 编辑
摘要:除了面向对象之外,被大家熟知的编程范式还有另外两种,面向过程编程和函数式编程。面向过程这种编程范式随着面向对象的出现,已经慢慢退出了舞台,而函数式编程目前还没有被广泛接受。 在工作中,很多人搞不清楚面向对象和面向过程的区别,总以为使用面向对象编程语言来做开发,就是在进行面向对象编程了。而实际上,他们 阅读全文
posted @ 2019-11-29 21:29 沐晨_li 阅读 (20) 评论 (0) 编辑
摘要:理解面向对象编程及面向对象编程语言的关键就是理解其四大特性:封装、抽象、继承、多态。不过,对于这四大特性,光知道它们的定义是不够的,我们还要知道每个特性存在的意义和目的,以及它们能解决哪些编程问题。 封装(Encapsulation) 封装也叫作信息隐藏或者数据访问保护。类通过暴露有限的访问接口,授 阅读全文
posted @ 2019-11-29 21:22 沐晨_li 阅读 (44) 评论 (0) 编辑
摘要:基于接口而非实现编程。这个原则非常重要,是一种非常有效的提高代码质量的手段,在平时的开发中特别经常被用到。 如何解读原则中的“接口”二字? “基于接口而非实现编程”这条原则的英文描述是: 。理解这条原则的时候,千万不要一开始就与具体的编程语言挂钩,局限在编程语言的“接口”语法中(比如 中的 接口语法 阅读全文
posted @ 2019-11-29 21:12 沐晨_li 阅读 (176) 评论 (0) 编辑