- 浏览: 468018 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (272)
- java基础 (59)
- struts (8)
- spring (8)
- 数据库 (8)
- java 网络编程 (29)
- hibernate (3)
- JavaScript (10)
- 日志管理 (2)
- jsp (4)
- servlet (7)
- xml (4)
- ajax (2)
- web service (4)
- 算法与数据结构 (13)
- java 反射机制 (11)
- java 泛型 (3)
- java I/O (8)
- java 线程 (12)
- JavaEE (6)
- java解惑 (33)
- 工具 (5)
- MyEclipse编程实践 (1)
- OSGI (2)
- 设计模式 (9)
- 正则表达式 (0)
- EJB (3)
- Ubuntu linux (6)
- Android (1)
- web前端 (2)
- 找工作 (1)
- SCA (1)
- maven (1)
- 缓存 (1)
- json (1)
- javamail (1)
- 工作笔记 (2)
最新评论
-
霜花似雪:
博主可以分享一下源码吗?
使用maven构建web项目实例 -
王庆波-行:
很好的demo!
memcache使用实例 -
surpassno:
大写的牛逼
java可视化显示内存使用情况 -
zhulin0504:
怎么访问NetEcho.html页面呀???
applet与servlet的网络通信 -
springdata:
java多线程实例demo源代码下载:http://www.z ...
java多线程例子
...用于不定参数
java的引用例子,强引用,弱引用,虚引用
执行结果:
finalize的用法
method B.finalize at 12487493406564
method A.finalize at 12487493840976
package uncertainParameter; public class Testparameter { public void argtest(Object ...objects ){//...表示不定参数个数 for(int i=0;i<objects.length;i++){ System.out.println(objects[i]); } } public static void main(String[] args) { new Testparameter().argtest(23,"hello",true); } }
java的引用例子,强引用,弱引用,虚引用
package reference; import java.lang.ref.SoftReference; import java.lang.ref.WeakReference; import java.lang.ref.PhantomReference;//虚引用 import java.lang.ref.ReferenceQueue; import java.util.Set; import java.util.HashSet; public class TestReferences { public static void main(String[] args) { int length=3; //创建length个MyObject对象的强引用 Set<MyObject> a = new HashSet<MyObject>(); for(int i = 0; i < length; i++) { MyObject ref=new MyObject("Hard_" + i); System.out.println("创建强引用:" +ref); a.add(ref); } a=null; //强引用对象,除非显示调用对象=null,否则不会立刻回收空间 System.gc(); //创建length个MyObject对象的软引用 Set<SoftReference<MyObject>> sa = new HashSet<SoftReference<MyObject>>(); for(int i = 0; i < length; i++) { SoftReference<MyObject> ref=new SoftReference<MyObject>(new MyObject("Soft_" + i)); System.out.println("创建软引用:" +ref.get()); sa.add(ref); } System.gc(); // 空间足够,不回首,空间不足,回收对象 //创建length个MyObject对象的弱引用 Set<WeakReference<MyObject>> wa = new HashSet<WeakReference<MyObject>>(); for(int i = 0; i < length; i++) { WeakReference<MyObject> ref=new WeakReference<MyObject>(new MyObject("Weak_" + i)); System.out.println("创建弱引用:" +ref.get()); wa.add(ref); } System.gc(); //一旦发现被弱引用的对象,立即回收,不管空间足够与否 //创建length个MyObject对象的虚引用 ReferenceQueue<MyObject> rq = new ReferenceQueue<MyObject>(); Set<PhantomReference<MyObject>> pa = new HashSet<PhantomReference<MyObject>>(); for(int i = 0; i < length; i++) { PhantomReference<MyObject> ref = new PhantomReference<MyObject>(new MyObject("Phantom_" + i), rq); System.out.println("创建虚引用:" +ref.get()); pa.add(ref); } System.gc(); } } class MyObject { private String id; public MyObject(String id) { this.id = id; } public String toString() { return id; } // JVM保证在一个对象所占用的内存被回收之前,如果它实现了finalize方法,则该方法一定会被调用 public void finalize() { System.out.println("回收对象:" + id); } }
执行结果:
创建强引用:Hard_0 创建强引用:Hard_1 创建强引用:Hard_2 回收对象:Hard_2 回收对象:Hard_1 回收对象:Hard_0 创建软引用:Soft_0 创建软引用:Soft_1 创建软引用:Soft_2 创建弱引用:Weak_0 创建弱引用:Weak_1 创建弱引用:Weak_2 回收对象:Weak_2 回收对象:Weak_1 回收对象:Weak_0 创建虚引用:null 创建虚引用:null 创建虚引用:null 回收对象:Phantom_2 回收对象:Phantom_1 回收对象:Phantom_0
finalize的用法
package reference; class A { B b; public void finalize() { System.out.println("method A.finalize at " + System.nanoTime()); } } class B { public void finalize() { System.out.println("method B.finalize at " + System.nanoTime()); } } public class Test { public static void main(String[] args) { A a = new A(); a.b = new B(); a = null; System.gc(); } }
method B.finalize at 12487493406564
method A.finalize at 12487493840976
发表评论
-
java Romdom例子
2011-06-16 16:41 1893random.netInt()如果括号里 ... -
java 内部类详解(转)
2011-06-01 15:47 4966Java 内部类 分四种:成员内部类、局部内部类、静态内部类和 ... -
Fibonacci数列计算+找出出现次数最多字符+不同数字的排列组合
2011-05-26 15:40 21041,斐波拉契数列的计算 package chapter9; ... -
java中的System类中的方法
2011-05-24 11:00 998public final class System exten ... -
java可视化显示内存使用情况
2011-05-20 16:03 2592package memoryManage; /* * ... -
java 界面swing之表格
2011-05-20 13:39 6533package othertest; import ja ... -
java的队列和栈的一些api
2011-05-16 11:31 1699类 Stack<E> java.lang.Obje ... -
JAVA 中一些api(字符字符串缓冲,URL类,Math类方法,正则表达式)
2011-05-12 10:36 1738CharBuffer字符缓冲区, StringBuffer字符 ... -
java applet 一个简单的例子(applet+html)
2011-05-09 16:49 4158java applet是一个类,其层次结构如下图: 类 JAp ... -
java 核心技术(数组(杨辉三角),散列码,对象拷贝,枚举类型,定时器)
2011-05-04 10:43 1562数组java中无多维数组,都是一维数组,多维数组可以看做是数组 ... -
设计模式总结
2011-04-26 16:50 870对于GoF总结的经典的23中设计模式,分为3类: (1)创建型 ... -
猜数字游戏
2011-04-12 17:27 1179package guessNumber; import ... -
Comparator实现排序
2011-04-01 14:13 8652在java.util包中有一个Collections类,里面实 ... -
21天学会java(含电子书下载)
2011-03-15 16:12 253321天学通java 比较基础 第一天 创建简单applicat ... -
理解浮点数存储
2011-03-15 09:44 989整体呈现 二进制浮 ... -
java.lang.UnsatisfiedLinkError解决办法
2011-03-10 16:59 1180实质上就是Eclipse下配置jdk,jre环境的问题 win ... -
java string,stringbuffer区别例子
2011-01-11 14:44 1361public class test_3 { public ... -
java定时器的使用
2011-01-11 09:20 1448有时需要在一定时间段后,执行某一个操作 java中现有的Ti ... -
对象简单克隆clone和引用(转)
2010-12-15 17:02 871对象克隆,返回和原对 ... -
java applet例子---图片像素处理
2010-12-07 17:01 1924package applet; import java. ...
相关推荐
《JDK 6.0从入门到精通——Chapter 17 动态编程》 在Java编程领域,JDK 6.0版本引入了许多新特性,其中动态编程是提升开发效率和灵活性的重要方面。本章将深入探讨动态编程的概念、用途以及如何在JDK 6.0中利用这些...
标题中的“jdk6.0从入门到精通-----chapter18与动态语言结合”指的是Java开发工具包(JDK)6.0版本中的一个章节,主要探讨了如何将Java与动态编程语言集成。在Java 6中,引入了一个重要的特性,即Java平台标准版6...
标题 "(源码下载)jdk6.0从入门到精通-----chapter2--输入输出,克隆对象" 提供了我们要探讨的主题,即Java中的输入输出流(I/O Stream)和对象克隆。在这个章节中,我们将深入理解这两个关键概念。 **输入输出流...
《JDK 6.0线程入门到精通——Chapter 7》 在Java开发中,线程是程序执行的最小单元,它使得一个程序能够同时处理多个任务,从而提高了程序的效率和响应性。在JDK 6.0中,线程的管理和使用有了更加完善的特性,对于...
在Java编程领域,JDK(Java Development Kit)是开发和运行Java应用程序的...总的来说,"JDK6.0从入门到精通-----chapter5网络编程 新I/O"是一个极好的学习资源,无论你是初学者还是有经验的开发者,都能从中获益良多。
本章“jdk6.0从入门到精通-----chapter8并发多线程(1)”着重讲解了Java 6中关于多线程的基本知识和实践技巧。通过源码下载,读者可以更直观地理解多线程的实现方式。 首先,我们要理解什么是多线程。在单线程环境...
本章节将深入探讨JDK 6.0中的文件和目录操作,这对于任何Java开发者来说都是必备的知识点。在实际项目中,我们需要频繁地与文件系统交互,例如读取、写入、移动或删除文件和目录,因此理解这部分内容至关重要。 ...
在Java编程领域,JDK6.0是一个重要的版本,它为开发者提供了丰富的特性和改进。本章我们将深入探讨“反射机制”以及如何结合Spring AOP(面向切面编程)进行应用。反射是Java中的一种强大工具,允许程序在运行时检查...
微信开发平台开发工具 JDK jdk 6.0 jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008
jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-windows-x64安装包 jdk-7u80-...
java6.0文档chm版,分成三部分,分别为JDK6.0+中文文档-lytim24.part1.rar、JDK6.0+中文文档-lytim24.part2.rar、JDK6.0+中文文档-lytim24.part3.rar
- 首先,从官方或可信渠道下载JDK 6.0的安装程序。 - 运行安装程序,按照提示完成安装过程。 - 配置环境变量,如JAVA_HOME指向JDK安装目录,PATH添加bin子目录,确保系统能够找到Java命令。 - 检验安装是否成功,...
开发工具 jdk-8u121-windows-i586开发工具 jdk-8u121-windows-i586开发工具 jdk-8u121-windows-i586开发工具 jdk-8u121-windows-i586开发工具 jdk-8u121-windows-i586开发工具 jdk-8u121-windows-i586开发工具 jdk-8...
java-jdk1.8-8u361-all-jdk-win-linux 该压缩包中包含jdk1.8-8u361下windows版本和linux版本,其包含快速安装包和对应的jdk压缩包版本,具体内容如下: jdk-8u361-linux-aarch64.rpm jdk-8u361-linux-i586.rpm jdk-8...
这个是安装开发工具java jdk 有很多用途
jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-windows-x64jdk-8u131-...
jdk-8u311-windows-x64.exe jdk-8u311-windows-x64.exe.zip jdk-8u311-windows-x64.exe jdk-8u311-windows-x64.exe.zip jdk-8u311-windows-x64.exe jdk-8u311-windows-x64.exe.zip jdk-8u311-windows-x64.exe jdk-8u...
jdk-8u60-windows-i586 jdk-8u60-windows-i586 jdk-8u60-windows-i586 jdk-8u60-windows-i586 jdk-8u60-windows-i586
jdk1.8 jdk-8u5-windows-i586 32位官方正式版 jdk1.8 jdk-8u5-windows-i586 32位官方正式版
java6.0文档chm版,分成三部分,分别为JDK6.0+中文文档-lytim24.part1.rar、JDK6.0+中文文档-lytim24.part2.rar、JDK6.0+中文文档-lytim24.part3.rar