- 博客(9)
- 资源 (7)
- 收藏
- 关注
原创 深入理解JVM(三)--对象存活判定算法
GC的历史比Java的历史要久远的多。虽然目前内存的动态分配与内存回收技术已经相当成熟,但是当需要排查各种内存溢出、内存泄漏的问题以及当垃圾回收系统成为系统达到更高并发的瓶颈时,我们就需要实施必要的监控和调节了。java中内存区域中的程序计数器、虚拟机栈、本地方法栈3个区域随着线程生灭,因此,这三个区域内就不需要过多考虑回收的问题。 但是JVM堆和方法区则不同。比如说一个接口的多个实现类需要的内
2018-01-17 18:38:37 683
原创 深入理解JVM(二)--HotSpot虚拟机对象探秘
实用优先,先从常用的虚拟机HotSpot和常用的内存区域Java堆为例,深入探讨HotSpot虚拟机在Java堆中对象分配、布局、访问的全过程。对象的创建Java是一门面向对象的编程语言。在Java程序运行过程中无时无刻都有对象被创建出来,在语言层面上,创建对象仅仅是一个new关键字而已,而在虚拟机中,对象的创建是一个复杂的过程。(这里的对象是指Java中的一半对象,不包括数组和Class对象。)
2018-01-16 10:52:41 323
原创 深入理解JVM(一)--Java内存区域与内存溢出异常
先从概念上介绍JVM虚拟机加内存的各个区域。知道这些区域的作用、服务对象以及可能出现的问题,是去真正的理解和调优JVM的基础工作。Java虚拟机在执行Java代码时会把它所管理的内存划分为不同的数据区域。这些区域都有各自的用途,以及销毁创建的时间。包含以下几个运行时的数据区域。 其中方法区与堆是由所有线程共享的数据区,虚拟机栈、本地方法区、程序技术器都是线程隔离的,相互不影响。(图中笔误,错写了本
2018-01-15 15:13:57 237
原创 JavaNIO
NIO基础:三大核心组件:Buffer(缓冲): Buffer是一个缓冲区的数据对象。 任何时候访问NIO中的数据,都需要通过缓冲区(Buffer)操作。 包含一些要写入或者读出的数据。读写操作都是基于缓冲区操作的。 每一个Java基本类型都对应着一种Buffer。 Channel(通道):Channel和流类似。但又有区别。 Channel支持异步操作。而流
2018-01-12 11:02:58 204
原创 迭代器模式
迭代器模式:提供一种方法访问一个容器中的各个元素,而又不暴露该对象的内部细节。属于行为类模式迭代器模式也是使用较多的一种模式。 遍历集合时,就必须先获得集合的iterator迭代器再遍历。这里的iterator就属于迭代器模式结构:抽象容器:一般是一个接口,提供一个iterator()方法。 例如java中的Collectiion接口。List接口,Se
2018-01-10 20:43:05 181
原创 外观者模式
外观模式: 为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口。 这个接口使得这一子系统更加容易使用。 外观模式是一种结构性模式。要点:1.外观模式为复杂的子类提供了一个简单的接口,并不为子系统添加新的功能和行为。2.外观模式是吸纳了子系统和客户系统之间的松耦合。3.外观模式没有封装子系统的类,只是提供了简单的接口。 如果应用需要,它并不限定客户使用子类。因此
2018-01-09 09:42:31 277
原创 代理模式
代理模式:作用: 为其他对象提供一种代理以控制对这个对象的访问。 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介作用。 其特征是代理与委托类有同样的接口。 代理模式是常用的设计模式。功能: 代理类不仅仅是一个隔离客户端和委托类的中介。 我们还可以借助代理类再次增加一些功能,而不需要修改原有代码。符合开闭原则。
2018-01-06 10:09:41 211
原创 java注解
元注解: 元注解的作用就是负责注解其他注解。 Java5.0定义了4个标准的meta-annotation类型。 它们被用来提供对其他annotation类型作说明。Java5.0定义的元注解: 1. @Target, 2. @Retention, 3. @Documented, 4. @Inherited 这些类型和它们所支持的类在ja
2018-01-01 16:28:41 216
原创 Log4j
一、为什么使用log4j—>log for Java??01. console控制台中显示的行数有限。信息会丢失。02. System.out.println()会影响我们的系统性能。03. 如果我们需要对用户的一些行为和行为,进行分析 需要收集用户的信息,分析用户的行为,反馈给用户。二、什么是logj??01. 使用java语言编写的日志框架。02. 是Apache的一个开源项目。
2018-01-01 13:58:26 187
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人