深入理解Java内存模型(二)——重排序

数据依赖性 如果两个操作访问同一个变量,且这两个操作中有一个为写操作,此时这两个操作之间就存在数据依赖性。数据依赖分下列三种类型: 名称 代码示例 说明 写后读 a = 1;b = a; 写一个变量之后,再读这个位置。 写后写 a = 1;a = 2; 写一个变量之后,再写这个变量。 读后写 a =…

注解(Annotation)自定义注解入门 

  要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。 元注解: 元注解的作用就是负责注解其他注解。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation…

JAVA字符编码系列之Unicode,GBK,GB2312,UTF-8概念基础

这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考。 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问题,特别是乱码问题,我觉得组成一个系列来描述和分析更好一些,包括三篇文章: 第一篇:JAVA字符编码…

abstract class与interface的区别

在找工作的过程中经常会被问到这个问题。因为个人觉得java中抽象类和接口奠定了以后的设计模式和其他的编程基础,让编程更加随心所欲。更加的灵活。 从某种意义上说,interface是一种特殊形式的 abstract class。. 下面看下这两者的具体的区别。 语法角度: 1、抽象类 用abstrac…

让myeclipse轻装上阵

myeclipse中加载的插件很多,启动很慢,编辑文件的时候运行也很慢,于是就想着优化它,给它瘦瘦身。下面是很久以前在网上搜集的,从evernote中摘出来分享下: 一、修改MyEclipse编辑JSP页面时的编辑工具 Window > perferences > General &gt…