语法糖(Syntactic Sugar),也叫糖衣语法,是英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语。指的是,在计算机语言中添加某种语法,这种语法能使程序员更方便的使用语言开发程序,同时增强程序代码的可读性,避免出错的机会;但是这种语法对语言的功能并没有影响。
Java中的泛型,变长参数,自动拆箱/装箱,条件编译等都是,下面做简单的介绍和分析。...
分类:
编程语言 时间:
2014-09-05 23:47:32
阅读次数:
293
垃圾收集算法
一般来说,垃圾收集算法分为四类:最基础的算法便是标记-清除算法(Mark-Sweep)。算法分为“标记”和“清除”两个阶段:首先标记处需要收集的对象,在标记完成之后,再统一回收所有被标记的对象。
这是最简单的一种算法,但是缺点也是很明显的:一个是效率问题,标记和清除效率都不高。二是空间问题,清除之后会产生大量的空间碎片,导致之后分配大对象找不到足够的连续对象而不得不触发另一次垃圾收集动作。算法执行过程如下图。...
分类:
编程语言 时间:
2014-08-22 16:26:59
阅读次数:
211
给一个系统定位问题的时候,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。这里的数据包括:运行日志、异常堆栈、GC日志、线程快照(threaddump/javacore文件)、堆转储快照(heapdump/hpro...
分类:
编程语言 时间:
2014-08-19 16:58:05
阅读次数:
229
Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存。 对象的内存分配,从大方向上将,就是在堆上分配(但也可能经过JIT编译后被拆散为标量类型并...
分类:
编程语言 时间:
2014-08-19 13:02:34
阅读次数:
301
只有几种情况可以解释这种结果
1.this并不指向son在堆中创建的实例
2.创建对象时内存中使用了其他机制来保证这种结果的生成。
翻看了一下《深入理解Java虚拟机 JVM高级特性与最佳实践》这本书 似乎得出了一些端倪
由此可见当访问成员变量时,检测到父类的成员变量之后程序停止继续寻找。
对于方法,由于其内容存放在方法区内,每个对象的发放应该是通过其自身的this即引用唯一绑定。故就差不多解释的通了。...
分类:
其他好文 时间:
2014-08-18 23:40:53
阅读次数:
414
JDK1.6垃圾收集相关参数 参数 描述 UseSerialGC 虚拟机运行在Client模式下的默认值,打开此开关后,使用Serial+Serial Old的收集器组合进行内存回收 UseParNewGC 打开此开关后,使用ParNew+Serial Old的收集器组合...
分类:
编程语言 时间:
2014-08-18 12:44:34
阅读次数:
214
内存中对象的创建、对象的结构以及访问方式。
一、对象的创建
在语言层面上,对象的创建只不过是一个new关键字而已,那么在虚拟机中又是一个怎样的过程呢?
(一)判断类是否加载。虚拟机遇到一条new指令的时候,首先会检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号代表的类是否被加载、解析并初始化。如果没有完成这个过程,则必须执行相应类的加载。
(二)在堆上...
分类:
编程语言 时间:
2014-08-17 20:00:52
阅读次数:
196
主要参考资料:《深入理解Java虚拟机》,未经本人及原书作者同意禁止转载。JVM中的数据区域JVM中给数据分了这么几个区域:其中: 1.程序计数器: 程序计数器是一块较小的内存空间,为当前线程所执行的字节码的行号指示器。也就是说,程序再翻译成为字节码了之后,分支、循环、跳转、异常处理、线程恢...
分类:
编程语言 时间:
2014-08-14 20:10:29
阅读次数:
281
待处理事项列表技术类1、提升java基础(内部类、泛型、集合、多线程、xml、io、nio、网络编程)2、学习设计模式。3、学习nutch。4、了解集成的知识。5、学习Hadoop。6、深入理解java虚拟机。7、阅读好的开源代码并参与感兴趣的开源项目。8、学习python语言。9、玩转github...
分类:
其他好文 时间:
2014-08-05 22:22:10
阅读次数:
552
网上一位大神的经验之谈【语言经典书】C:C程序设计语言(K&R)C和指针C专家编程C陷阱与缺陷你必须知道的495个C语言问题C++: C++ primer effective C++深度探索C++对象模型stl源码分析C++必知必会java:java编程思想java并发编程深入理解Java虚拟机:J...
分类:
其他好文 时间:
2014-07-30 20:25:24
阅读次数:
199