
J2SE
文章平均质量分 66
hbrqlpf
这个作者很懒,什么都没留下…
展开
-
用Java操作文件
一个用java实现对文件的操作。完成了如创建目录及文件,复制目录及文件以及删除等功能。主要用到了java的File类,FileInputStream类,FileOutputStream,FileWriter,PrintWriter,InputStream,OutputStream ,BufferedReader和FileReader等相关类。程序在某些方的实现可能存在一些问题,欢迎各位提出指正。转载 2007-09-14 23:08:00 · 571 阅读 · 0 评论 -
Java中静态关键字的使用和内部类的调用
1.顶级类 1) 可以定义任何静态和非静态的成员; 2) 顶级类不能是静态(static)的,若要加上其它关键字只能是public,final,abstract 3) 抽象类(abstract)和接口(interface)不能是final的. 4) 顶级类的静态方法中:可以直接访问该类的静态成员;访问非静态成员通过“new 顶级类().成员“的方法访问。访问静态内部类的成员通过“n转载 2007-10-04 19:38:00 · 644 阅读 · 0 评论 -
Java正则表达式
正则表达式用来指定字符串模式。当你需要定位匹配某种模式的字符串时就可以使用正则表达式。例如,我们下面的一个例程就是在一个HTML文件中通过查找字符串模式来定位所有的超链接。 当然,为了指定一种模式,使用...这种记号是不够精确的。你需要精确地指定什么样的字符排列是一个合法的匹配。当描述某种模式时,你需要使用一种特殊的语法。 这里有一个简单例子。正则表达式[Jj]ava.+匹配下列形式的转载 2007-10-12 16:11:00 · 787 阅读 · 0 评论 -
Java 网络编程
Java 网络编程基于套接字的通信可以使程序通过指定的套接字进行通信。套接字是两个主机之间逻辑链接的端点,可以用于发送和接收数据,Java对套接字的处理非常类似于对输入输出操作的处理,因此,程序从socket中读写就像从文件中读写一样容易Java支持流套接字和数据报套接字:流套接字使用传输控制协议TCP进行数据传输,而数据报套接字使用的是用户数据报协议UDP进行数据传输1、客户/原创 2007-10-26 18:57:00 · 989 阅读 · 0 评论 -
Collection Map 深入剖析
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。 Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHash转载 2007-10-12 15:56:00 · 517 阅读 · 0 评论 -
深入探讨Iterator模式
java.util包中包含了一系列重要的集合类。本文将从分析源码入手,深入研究一个集合类的内部结构,以及遍历集合的迭代模式的源码实现内幕。 下面我们先简单讨论一个根接口Collection,然后分析一个抽象类AbstractList和它的对应Iterator接口,并仔细研究迭代子模式的实现原理。 本文讨论的源代码版本是JDK 1.4.2,因为JDK 1.5在java.util中使用了很多转载 2007-10-12 15:39:00 · 560 阅读 · 0 评论 -
synchronized的作用
synchronized的作用 一、同步方法public synchronized void methodAAA(){//….}锁定的是调用这个同步方法的对象测试:a、不使用这个关键字修饰方法,两个线程调用同一个对象的这个方法。目标类:1public class TestThread {2 public void execute(){ //synchronized,未修饰转载 2007-10-17 15:02:00 · 569 阅读 · 0 评论 -
接口和抽象类的区别
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还转载 2007-11-21 17:15:00 · 570 阅读 · 0 评论 -
JNI
JNI ☆JNI 【摘】Java 本机接口(Java Native Interface (JNI))是一个本机编程接口,它是 Java 软件开发工具箱(Java Software Development Kit (SDK))的一部分。JNI 允许 Java 代码使用以其它语言(譬如 C 和 C++)编写的代码和代码库。Invocation API(JNI 的一部分)可以用转载 2008-02-20 13:41:00 · 970 阅读 · 0 评论 -
String类常用成员函数
String类常用成员函数int length():返回字符串的长度char charAt(int index):返回index位置处的字符byte[] getBytes():返回使用系统默认的字符编码方案将字符串编码成字节的序列char[] toCharArray():将字符串转化为一个字符数组boolean equals(Object anObject):判断两个字符原创 2007-12-09 09:49:00 · 2593 阅读 · 0 评论 -
int、char、double与byte相互转换的程序
//整数到字节数组的转换 public static byte[] intToByte(int number) { int temp = number; byte[] b=new byte[4]; for (int i=b.length-1;i>-1;i--){ b = new Integer(temp&0xff).byteValu转载 2008-03-17 12:21:00 · 668 阅读 · 0 评论 -
JAVA数据类型转换
1.Java的简单类型及其封装器类⑴Java简单类型与封装类我们知道,Java语言是典型的支持面向对象的程序语言,但考虑到有些基本数据类型的结构简单,占内存小且存取速度快等优点,Java依然提供了对这些非面向对象的简单数据类型的支持。当然,Java在提供大量的其它类时,也提供了与简单数据类型对应的封装类,于是,Java中就有了诸如int和Integer(float和Float、double转载 2008-03-17 12:27:00 · 6350 阅读 · 6 评论 -
java内部类总结
内部类:1,概述内部类是指在一个外部类的内部再定义一个类。内部类作为外部类的一个成员,并且依附于外部类而存在的。内部类可为静态,可用PROTECTED和PRIVATE修饰。(而外部类不可以:外部类只能使用PUBLIC和DEFAULT)。2,分类成员内部类、局部内部类、静态内部类、匿名内部类3,使用方法A,成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列。pub转载 2007-10-03 20:49:00 · 556 阅读 · 0 评论 -
栈内存和堆内存
Java把内存分成两种,一种叫做栈内存,一种叫做堆内存在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。 堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器来管理转载 2007-10-04 21:32:00 · 779 阅读 · 0 评论 -
Commons-logging + Log4j 入门指南
为什么要用日志(Log)?这个……就不必说了吧。为什么不用System.out.println()?功能太弱;不易于控制。如果暂时不想输出了怎么办?如果想输出到文件怎么办?如果想部分输出怎么办?……为什么同时使用commons-logging和Log4j?为什么不仅使用其中之一?Commons-loggin的目的是为“所有的Java日志实现”提供一个统一的接口,它自身的日志功能转载 2007-09-16 16:13:00 · 498 阅读 · 0 评论 -
文本文件和二进制文件
Java提供了很多进行文件输入输出的类,这些类可以分为文本I/O类和二进制I/O类。文本I/O将数据解释成字符的序列,二进制I/O将数据解释成原始的二进制数。文本在文件中如何存储依赖于文件的编码方式。Java对文本I/O提供自动编码与解码在文本文件中存储的数据是以人能读懂的方式表示的,而在二进制文件中存储的数据是用二进制形式来表示的。人读不懂二进制文件,它们是为程序读取而设计的。例如,Java原创 2007-09-24 15:44:00 · 2902 阅读 · 1 评论 -
理解Java多态
在Java中,谈论多态就是在讨论方法调用的绑定,绑定就是将一个方法调用同一个方法主体关联起来。在C语言中,方法(在C中称为函数)的绑定是由编译器来实现的,在英文中称为early binding(前期绑定),因此,大家自然就会想到相对应的late binding(后期绑定),这在Java中通常叫做run-time binding(运行时绑定),我个人觉得这样称呼更贴切,运行时绑定的目的就是在代码运行转载 2007-09-28 16:49:00 · 565 阅读 · 0 评论 -
Java实现的常用排序算法及对比
package Sort;class Data { Comparable key; Object value; public Data() { } public Data(Data data){ this.key=data.key; this.value=data.value; } public Data(Comparable转载 2007-10-22 16:02:00 · 694 阅读 · 1 评论 -
java面试常见问题
1、面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继转载 2007-10-19 17:08:00 · 607 阅读 · 0 评论 -
类的加载及初始化
在许多传统语言中,其程序是作为启动过程的一部分立刻被加载的,然后是初始化,紧接着程序开始运行。这些语言的初始化过程必须小心控制,以确保static的初始化顺序不会造成麻烦Java采用了一种不同的加载方式。在Java中,每个类的编译代码都存在于它自己的独立的文件中。该文件只在需要使用程序代码时才会被加载。一般来说,你可以说:“类的代码在初次使用时才加载。”这通常是指知道类的第一个对象被构建时才发原创 2007-09-28 17:06:00 · 902 阅读 · 0 评论 -
Java高维数组问题
第一步:Object[][] fields = new Object[initialSize][2];第二步:for(int i = 0; i fields[i] = new Object[] { null, null };}二维数组同样是一个对象的引用,二维数组中的每个元素是一个一维数组的引用,一维数组中的每个元素是一个数组元素的引用,指向数组元素对象初始化二维数组时,第一步用来new一原创 2007-10-03 22:15:00 · 1483 阅读 · 0 评论 -
Java数据类型问题
Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。 1、整数:包括int,short,byte,long 2、浮点型:float,double 3、字符:char 4、布尔:boolean基本数据类型所占字节数byte:8位有符号数short:16位有符号数int:32位有符号数long:64位有符号数原创 2007-10-07 15:03:00 · 1315 阅读 · 0 评论 -
关于Java栈与堆的思考
1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。2.栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走转载 2007-10-23 20:57:00 · 556 阅读 · 0 评论 -
String类总结
要理解 java中String的运作方式,必须明确一点:String是一个非可变类(immutable)。什么是非可变类呢?简单说来,非可变类的实例是不能被修改的,每个实例中包含的信息都必须在该实例创建的时候就提供出来,并且在对象的整个生存周期内固定不变。java为什么要把String设计为非可变类呢?你可以问问 james Gosling :)。但是非可变类确实有着自身的优势,如状态单一,对象简转载 2007-10-23 21:36:00 · 572 阅读 · 0 评论 -
Java 虚拟机类装载:原理、实现与应用
Java 虚拟机类装载:原理、实现与应用 一、引言 Java虚拟机(JVM)的类装载就是指将包含在类文件中的字节码装载到JVM中, 并使其成为JVM一部分的过程。JVM的类动态装载技术能够在运行时刻动态地加载或者替换系统的某些功能模块, 而不影响系统其他功能模块的正常运行。本文将分析JVM中的类装载系统,探讨JVM中类装载的原理、实现以及应用。 二、Java虚拟机的类装载实现与应用转载 2007-10-04 20:47:00 · 766 阅读 · 0 评论 -
Java编程思想 笔记
第2章 一切都是对象1、用引用(reference)操纵对象在Java里一切都被视为对象,因此可采用单一固定的语法操纵数据。尽管一切都“看作”对象,但操纵的标识符实际上是对象的一个“引用”2、必须由你创建所有对象一旦创建了一个引用,就希望它能与一个新的对象相连接。我们通常用new关键字来实现这一目的。2.1、存储到什么地方1. 寄存器(register)。这是最快的存储区,因为它位于不同于其他存储原创 2008-04-10 13:12:00 · 4266 阅读 · 0 评论