Java
文章平均质量分 70
JessenPan
这个作者很懒,什么都没留下…
展开
-
Java8新特性教程
欢迎阅读我的java8新特性介绍教程。本教程将一步一步的引领你浏览所有新的语言特性。伴随着一些简单且简短的代码示例,你将学习如何使用默认接口方法,lambda表示式,方法引用和可重复的annotation。 在阅读完本篇文章,你将对新加入的和更新的API有着更详细的了解。这些API包括流、功能接口、扩展的map以及新的Date API。翻译 2014-03-30 20:57:41 · 6800 阅读 · 3 评论 -
Java抽象类与接口的区别
很多常见的面试题都会出诸如抽象类和接口有什么区别,什么情况下会使用抽象类和什么情况你会使用接口这样的问题。本文我们将仔细讨论这些话题。在讨论它们之间的不同点之前,我们先看看抽象类、接口各自的特性。翻译 2014-07-26 19:21:43 · 1706 阅读 · 0 评论 -
java源文件和class文件编码详解
Java字符编码根本原理 Java开发中,常常会遇到乱码的问题,一旦遇到这种问题,常常就很扯蛋,每个人都不愿意承认是自己的代码有问题。其实编码问题并没有那么神秘,那么不可捉摸,搞清Java的编码本质过程就真相大白了。 先看个图: 其实,编码问题存在两个方面:JVM之内和JVM之外。 1、Java文件编译后形转载 2013-11-12 17:12:46 · 11562 阅读 · 2 评论 -
捕获javaw的输出
在java中存在java、javaw以及javaws这三个launcher,java用来启动控制台程序,javaw用来启动GUI程序,javaws用来启动Web程序,具体介绍见:http://blog.csdn.net/topwqp/article/details/8595936。 在eclipse中,默认使用的是javaw来启动java程序,那么就会出现一个问题。既然javaw是用来启动原创 2013-11-10 17:53:44 · 3556 阅读 · 0 评论 -
jar格式文件简介
jar是什么? jar是java中的文件归档技术。它使用十分流行的ZIP文件格式将很多分散的文件归档到一个文件中。尽管jar能够被用作通用的归档工具,但是开发它的最重要目的并不是用作这个。它是为了能够在一次http连接中将applet和它的相关资源(例如图片、clsss文件等)下载到用户的浏览器中,而不是使用一份资源下载一次。通过这个方法极大地减少了从载入到运行applet所使用的时间。jar翻译 2013-11-10 16:28:16 · 2276 阅读 · 0 评论 -
浅谈Java API中基本数据类型包装类的缓存设计
缓冲在计算机中的作用 缓存的英文含义是“safekeeping storage”,顾名思义就是一块可以安全使用的存储空间。那么既然计算机中已经有了硬盘和内存这些存储空间,为什么还需要缓存的存在。 首先,缓存的原始意义是指访问速度比RAM快的一种RAM,使用的是SRAM技术(价格比较昂贵),最初用在计算机的硬件中用来缓解cpu和内存之间的速度差异。我们都知道著名的“二八定律”:原创 2013-08-10 23:52:42 · 1554 阅读 · 0 评论 -
浅谈Java类库解耦基本设计思路
面向接口编程和面向对象编程 现今的高级语言如Java、C#等都提供了interface这一关键字用于定义接口,因为在这类语言中都可以定义抽象类。很多人便把抽象类和接口进行了等价,认为接口的作用便是提供多继承。然而当我们仔细研究Java类库中定义的接口,大都可以看到类似于Cloneable、Appendable、Closeable的接口定义。从这些接口定义的名字可以看到,接口的作用是用原创 2013-08-11 16:49:53 · 4009 阅读 · 0 评论 -
JAVA并发编程学习笔记之Unsafe类
原文地址:http://blog.csdn.net/aesop_wubo/article/details/7537278?reloadjava不能直接访问操作系统底层,而是通过本地方法来访问。Unsafe类提供了硬件级别的原子操作,主要提供了以下功能:1、通过Unsafe类可以分配内存,可以释放内存;类中提供的3个本地方法allocateMemory、reallocateMemory、转载 2013-08-05 17:03:33 · 866 阅读 · 0 评论 -
Java Integer.highestOneBit(i)代码品读
1、在写代码的过程中,偶尔使用到了 Integer.highestOneBit(i)这个函数调用。使用的第一感觉就是这个函数是干什么用的,通过查看文档得知,这个函数的作用是取 i 这个数的二进制形式最左边的最高一位且高位后面全部补零,最后返回int型的结果。首先来补充一点背景知识。1、在计算机系统中,数值一律使用补码来表示和存储。主要原因是使用补码可以将符号位和其它位统一处原创 2013-07-29 16:33:30 · 16701 阅读 · 2 评论 -
通过模版方式模式进行框架设计
最近在看 Mina的源代码。结合之前使用过的一些,诸如Structs,Zend,JUint等等框架,对框架的基本实现模式有了一点认识。例如使用structs2时,需要继承ActionSupport类并实现它的execute()的方法。这就是典型GoF的模板方法模式。首先看看下面模板方法的类图:父类AbstractClass定义了两个抽象方法Operation原创 2013-07-23 23:41:54 · 805 阅读 · 0 评论 -
Junit 4.x的使用
本文将介绍JUnit 4的使用原创 2013-07-14 16:51:28 · 1137 阅读 · 0 评论 -
Junit和EasyMock的使用
本文将介绍Junit和EasyMock结合进行复杂环境的模拟测试原创 2013-07-14 17:48:59 · 1399 阅读 · 0 评论 -
Junit 3.x的使用
本文介绍Junit 3.x版本的使用原创 2013-07-14 16:10:17 · 1395 阅读 · 0 评论 -
Hibernate调试——定位查询源头
为什么有时Hibernate会在程序某一部分生成一条指定sql查询?这个问题让人很难立刻理解,当处理不是我们本人编写的代码时更是如此。本文将展示如何配置来产生Hibernate查询操作的日志。通过这些日志和一些小技巧来找出这些指定的查询为什么及在何处被执行。翻译 2014-07-26 19:23:46 · 1030 阅读 · 0 评论