JavaSE
文章平均质量分 77
zhimin_duan1986
这个作者很懒,什么都没留下…
展开
-
java代码优化
Java程序中的内存管理机制是通过GC完成的,“一个对象创建后被放置在JVM的堆内存中,当永远不在应用这个对象的时候将会被JVM在堆内存中回收。被创建的对象不能再生,同时也没有办法通过程序语句释放”(这个是《Java的GC机制》中提到的定义,呵呵,还依稀记得)这就是GC对垃圾对象的定义。个人感觉这么解释或许会比较快理解:在运行环境中JVM会对两种内存进行管理,一种是堆内存(对象实例或者变量)...2009-11-11 09:23:00 · 70 阅读 · 0 评论 -
JVM(Java虚拟机)中进程工作目录讲解
每次我们用Java命令运行我们的Java程序,都会在JVM中开启一个进程,对于每一个进程,都会有一个相对应的工作目录,这个工作目录在虚拟机初始化的时候就已经设置好了,默认的情况下,工作目录是我们工程的根目录,比如:/home/test/Project---bin--divinemind.onlyfun.test.helloworld.java--src 假如我们在用下面的命...原创 2012-01-05 17:50:57 · 292 阅读 · 0 评论 -
Fail Fast机制
转自:http://geeklu.com/2010/07/fail-fast/Fail Fast从字面上看是“快速失败”的意思,或者叫做“速错”,其含义就是让可能发生的错误尽早的被发现。无论是人类,还是代码这个道理都是适用的。我们在做事的时候,犯错误是很常见的,但是我们应该尽量使得错误发生之初就被发现,并找出原因进行纠正。一开始不重视或者变相的处理了,这会使得错误延后,反而使得损失增大。还...原创 2011-07-13 14:20:41 · 210 阅读 · 0 评论 -
DATE类学习总结(CALENDAR DATE 字符串 相互转换 格式化)
Date类学习总结(Calendar Date 字符串 相互转换 格式化)Date类学习总结 1.计算某一月份的最大天数Calendar time=Calendar.getInstance();time.clear();time.set(Calendar.YEAR,year); //year 为 int time.set(Calendar.MONTH,i-1);//注意,Calend...2010-12-06 16:20:00 · 153 阅读 · 0 评论 -
[转]代理模式 - 静态代理与动态代理
1. 代理模式主要有两种:静态代理和动态代理 2. 静态代理: 比如要在输出“HelloWorld”前打印一个字符串“Welcome” A:先定义一个接口类 Java代码package ttitfly.proxy; public interface HelloWorld { public void pri...2011-01-22 01:07:00 · 70 阅读 · 0 评论 -
Java中ThreadLocal的设计与使用
Java中ThreadLocal的设计与使用早在Java 1.2推出之时,Java平台中就引入了一个新的支持:java.lang.ThreadLocal,给我们在编写多线程程序时提供了一种新的选择。使用这个工具类可以很简洁地编写出优美的多线程程序,虽然ThreadLocal非常有用,但是似乎现在了解它、使用它的朋友还不多。 一、ThreadLocal是什么ThreadLocal并非是一个线...2011-01-22 00:48:00 · 108 阅读 · 0 评论 -
设计模式解读 - 策略模式
设计模式解读 - 策略模式 1. 模式定义 把会变化的内容取出并封装起来,以便以后可以轻易地改动或扩充部分,而不影响不需要变化的其他部分; 2. 问题缘起 当涉及至代码维护时,为了复用目的而使用继承,结局并不完美。对父类的修改,会影响到子类型。在超类中增加的方法,会导致子类型有该方法,甚至连那些不该具备该方法的子类型也无法免除。示例,一个鸭子类型...2011-01-21 15:47:00 · 69 阅读 · 0 评论 -
在运行jar包中正确读取资源文件
可能有不少初学者会有这样的困惑:在你的代码里调用了一些资源文件,如图片,音乐等,在调试环境或单独运行的时候可以正常显示或播放,而一旦打包到jar文件中,这些东东就再也出不来了,除非把这个jar放到原来未打包以前的目录下,但通常jar是单独发布的。这里介绍一个解决这类问题的方法。getResource和getResourceAsStream 问题的根源还是在于老生常谈的所谓class ...原创 2011-04-14 21:43:16 · 456 阅读 · 0 评论 -
javamail发送邮件的简单实例
今天学习了一下JavaMail,javamail发送邮件确实是一个比较麻烦的问题。为了以后使用方便,自己写了段代码,以方便以后使用。 以下三段代码是我的全部代码,朋友们如果想用,直接复制即可。 第一个类:MailSenderInfo.javapackage com.util.mail; /** *//** * 发送邮件需要使用的基本信息 */ import java....2010-03-03 16:23:00 · 71 阅读 · 0 评论 -
HashMap,LinkedHashMap,TreeMap应用简介
共同点: HashMap,LinkedHashMap,TreeMap都属于Map;Map 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。 不同点: 1.HashMap里面存入的键值对在取出的时候是随机的,也是我们最常用的一个Map.它根据键的HashCode值存储数据,根据键...2010-02-04 11:52:00 · 67 阅读 · 0 评论 -
java数组排序Arrays.sort,以及Comparator接口的用法
有的时候需要对数组里的element进行排序。当然可以自己编写合适的排序方法,但既然java包里有自带的Arrays.sort排序方法,在数组元素比较少的时候为何不用? Sorting an Array 1. 数字排序 int[] intArray = new int[] { 4, 1, 3, -23 }; Arrays.s...2010-02-03 12:18:00 · 147 阅读 · 0 评论 -
Java 小例子:如何使用 Enum
Java 在 1.5 以前,常量是个头疼的问题。因为一些参数只能取那么几个值,而从参数类型上又看不出来有哪些值可以取。从 1.5 开始 Java 引进了 Enum 枚举类型,并根据 Java 自身的特点将其进行了强化。实际上现在所有的常量都可以通过 Enum 来定义了。下面是一个例子,演示了 Enum 的基本用法,以及如何向 Enum 类型加入自定义属性。<!--<br />...2010-07-19 22:51:00 · 72 阅读 · 0 评论 -
[转]Java1.5泛型指南中文版(Java1.5 Generic Tutorial)
Java1.5 泛型指南中文版 (Java1.5 Generic Tutorial): http://blog.csdn.net/explorers/archive/2005/08/15/454837.aspx 英文版 pdf 下载链接: ...2010-07-07 23:28:00 · 82 阅读 · 0 评论 -
Java调用外部程序命令时线程阻塞问题分析
文章参考http://www.qqread.com/java/2010/05/w493489.html 今天要写个远程重启服务的功能,为了开发速度,暂时定为Java代码+WMIC命令的方法,简单的说,就是利用Java调用本机应用程序的方法。涉及到的 Java类有java.lang包里面的Runtime、Process、ProcessBuilder三个类,以及wmic中重启服务的命...原创 2012-01-06 13:52:24 · 199 阅读 · 0 评论