自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

帅帅的博客

一步,又一步

  • 博客(9)
  • 收藏
  • 关注

原创 【java进阶】java虚拟机垃圾回收详解(四)--内存分代与回收策略

目录1.并行(Parallel)与并发(Concurrent)2.Minor GC和Full GC3.年轻代4.老年代在讨论回收策略之前,有必要明白以下几个概念:1.并行(Parallel)与并发(Concurrent)并行:多个cpu同时执行一段逻辑代码,是真正的同时。在垃圾收集中指多条回收线程并行工作,此时用户线程处于等待状态并发:指通过CPU调度算法,让用户感...

2018-08-31 16:12:12 424

原创 【java进阶】java虚拟机垃圾回收详解(三)--垃圾收集器

目录1.Serial收集器2.ParNew收集器3.Parllel Scavenge收集器4.Serial Old收集器5.Parallel Old收集器6.CMS收集器(Concurrent Mark Sweep)7.G1收集器java 虚拟机中的垃圾收集器有Serial,ParNew,Parallel Scavenge,Serial Old,Parallel O...

2018-08-30 19:06:19 231 1

原创 【java进阶】java虚拟机垃圾回收详解(二)--垃圾收集算法

上一篇文章介绍了,java虚拟机怎么判断一个对象是否可以回收。本文介绍一下垃圾收集算法。1.标记-清除 算法顾名思义,“标记-清除”算法分为“标记”和“清除”两个阶段。首先标记出所需要回收的对象,然后统计清除这些标记的对象。标记以后的内存区域:活动 已标记 活动 已标记 已标记 活动 已标记 活动 已标记 已标记 活动 ...

2018-08-30 12:37:52 104

原创 【java进阶】java虚拟机垃圾回收详解(一)--判断对象已死

说起垃圾回收,应该思考三个问题。1.那些区域需要回收?2.什么时候回收?3.怎么回收?参考上一篇文章谈到的java虚拟机内存区域划分,我们知道,jvm内存区域中虚拟机栈,本地方法栈,程序计数器都属于线程私有的。这三个区域随线程生而生,随线程死而灭。栈中的栈帧随着方法的进入和推出有条不紊的进行着入栈和出栈操作。每一个栈帧分配多少内存基本上在类结构确定下来的时候就已知。而堆和方法区属于...

2018-08-30 11:30:29 139

原创 【java进阶】java 虚拟机内存区域划分(JVM)

java虚拟机内存区域划分为:堆,虚拟机栈,本地方法栈,方法区,程序计数器。其中堆,方法区为线程共享区域,其他区域为线程私有的。1.程序计数器(Program Counter Register) 程序计数器是一块很小的内存空间,是当前线程所执行的字节码的行号指示器。字节码解释器工作就是通过改变程序计数器的值来选取下一条执行的字节码指令。2.虚拟机栈(Java Virtual Mac...

2018-08-29 16:21:12 185

原创 接口隔离原则(Interface Segreation Principle)

接口隔离原则是说:使用多个专门的接口要比使用单一的总接口好。 

2018-08-13 11:41:08 184

原创 依赖倒转原则(Dependence Inversion)

依赖倒转原则是说:要依赖于抽象,不要依赖于具体。抽象层次包含的是应用系统的业务逻辑和宏观的,对系统来说重要的战略决定。而具体层次包含一些次要的与实现有关的算法和逻辑,以及战术的决定。具体层有很大的偶然性和变动性。所以依赖稳定的抽象层,才能保证系统的稳定性。依赖倒转原则是实现“开闭原则的”主要机制。依赖反转原则对应的设计模式:1. 工厂方法模式。2.模板方法模式。3.迭代子模...

2018-08-13 11:37:22 268

原创 设计原则之里氏替换原则(Liskov Substitution Principle)

里氏替换原则是说,任何基类出现的地方,子类一定可以出现。换言之,一个软件实体如果使用的是一个基类的话,那么一定适用于其子类。--《Java与模式》举个栗子:假设有连个类,Base和Derived,并且Derived是Base的子类,那么method(Base b)可以接受基类的对象,就一定可以接受子类对象d,method(d) 也是成立的。里氏替换原则是抽象化步骤的规范。也是继承复用的...

2018-08-13 10:57:49 239

原创 设计原则之“开-闭”原则(Open-Closed Principle)

"开-闭"原则是指:一个软件实体应当对扩展开放,对修改关闭。--《Java与模式》"开-闭"原则是说,在设计模块的时候,应当使这个模块在不被修改的前提下,进行扩展。举例如下,孙悟空大闹天宫时,玉帝给了一个弼马温的职位。在天庭的职位体系中,扩展一个弼马温的职位并未修改天庭中其他职位系统。 在这个例子中,“文武仙卿”就是各个职位的一个抽象,在不改变抽象层的情况下,扩展了实现层。从而满足了“...

2018-08-13 10:34:18 1121

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除