
j2se
文章平均质量分 75
elimago
aa
展开
-
JAVA正则表达式
JAVA与正则表达式 有一个String,如何查询其中是否有y和f字符?最黑暗的办法就是:程序1:我知道if、for语句和charAt()啊。class Test{ public static void main(String args[]) { String str="For my money, the important thing "+转载 2007-07-02 11:24:00 · 1412 阅读 · 0 评论 -
jdbc executeBatch bug
使用jdbc的executeBatch 方法,如果数据库为oracle,则无论是否成功更新到数据,返回值都是-2,而不是真正被sql更新到的记录数,也就是说所谓返回的计数,实际上是被成功执行的sql命令的个数,而不是实际上被更新到的数据记录的个数,因为区分是否成功执行,只是看这条sql在oracle中是否抛出ora-xxxxx的异常。因为对于不同的sql,jdbc无法判断到底更新多少条数据才算正常原创 2007-07-03 11:34:00 · 4551 阅读 · 0 评论 -
比较分析Vector、ArrayList和hashtable hashmap数据结构
线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHas转载 2007-07-19 13:39:00 · 691 阅读 · 0 评论 -
Java学习的30个目标
本文将告诉你学习Java需要达到的30个目标,希望能够对你的学习有所帮助。对比一下自己,你已经掌握了这30条中的多少条了呢? 1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。 2.你需要学习JAVA语言的基础知识以及它的核心类库(col转载 2007-08-08 13:12:00 · 502 阅读 · 0 评论 -
为什么要使用接口编程
进行接口的介绍,必须介绍一下程序语言发展的历史才行,鲁迅先生说过“治学先治史”,明白了程序语言发展的前世今生,才能知道为什么这么多语言为什么会这样,为什么么会那样?计算机出现以后,科学家相继开发了多种语言,从smalltalk,Pascal,Basic,C语言,C++,java,.net等等,这些语言的发展步伐,可以看作是从面向过程向面向对象发展的一段历史。很多面向对象的书在介绍自己的历史的时候,转载 2007-08-12 13:38:00 · 771 阅读 · 0 评论 -
关于Java占用内存的研究
最近对程序占用内存方面做了一些优化,取得了不错的效果,总结了一些经验简要说一下,相信会对大家写出优质的程序有所帮助下面的论述针对32位系统,对64位系统不适用,后叙经常你写了一个程序,一测试,功能没问题,一看内存占用也不多,就不去考虑其它的东西了。但可能程序使用了一个什么数据结构,会当数据规模变大时,内存占用激增。基本&&关键的问题是,Java里各种东东占多少内存?????????对于primit转载 2007-08-12 13:58:00 · 511 阅读 · 0 评论 -
字符,字节和编码
级别:中级摘要:本文介绍了字符与编码的发展过程,相关概念的正确理解。举例说明了一些实际应用中,编码的实现方法。然后,本文讲述了通常对字符与编码的几种误解,由于这些误解而导致乱码产生的原因,以及消除乱码的办法。本文的内容涵盖了“中文问题”,“乱码问题”。掌握编码问题的关键是正确地理解相关概念,编码所涉及的技术其实是很简单的。因此,阅读本文时需要慢读多想,多思考。引言“字符与编转载 2007-08-12 14:02:00 · 545 阅读 · 0 评论 -
Java语言编码规范(Java Code Conventions)
1 介绍(Introduction)1.1 为什么要有编码规范(Why Have Code Conventions)编码规范对于程序员而言尤为重要,有以下几个原因:- 一个软件的生命周期中,80%的花费在于维护- 几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护- 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码- 如果你将源码作为产品发转载 2007-08-12 13:28:00 · 623 阅读 · 0 评论 -
java中究竟是传值还是传引用?
首先,推荐对Java有一定理解的同仁一本书《Practical Java》。在《Practical Java》中也有一个章节介绍Java中关于传值和传引用的问题,堪称经典。《Practical Java》在Java中,事实上底层工作原理不存在传引用的概念,这也象《Practical Java》中所说的那样,Java中只有传值。这句话理解起来需要费一定的周折。熟悉C的程序员都用过指针,对指针可谓爱之转载 2007-08-12 13:53:00 · 552 阅读 · 0 评论 -
Java编译器对于String常量表达式的优化
Java编译器对于String常量表达式的优化2007-09-13 来自:lizhe1985 [收藏到我的网摘]show_ads_zone(112);来源:赛迪网 首先把问题摆出来,先看这个代码 String a = "ab"; String b = "a" + "b"; System.out.println((a == b)); 打印结果会是什么?类似这样的问题,有人考过转载 2007-09-14 14:05:00 · 525 阅读 · 0 评论 -
Java SE 6 新特性1: Instrumentation 新功能
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马)。跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的提升。与 Tiger 在 API 库方面的大幅度加强相比,虽然 Mustang 在 API 库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebSe转载 2007-09-18 11:13:00 · 677 阅读 · 0 评论 -
Java SE 6 新特性2: HTTP 增强
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马)。跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的提升。与 Tiger 在 API 库方面的大幅度加强相比,虽然 Mustang 在 API 库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebSe转载 2007-09-18 11:19:00 · 654 阅读 · 0 评论 -
Java SE 6 新特性3: JMX 与系统管理
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马)。跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的提升。与 Tiger 在 API 库方面的大幅度加强相比,虽然 Mustang 在 API 库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebSe转载 2007-09-18 11:21:00 · 688 阅读 · 0 评论 -
Java SE 6 新特性4: 编译器 API
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马)。跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的提升。与 Tiger 在 API 库方面的大幅度加强相比,虽然 Mustang 在 API 库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebSe转载 2007-09-18 11:22:00 · 767 阅读 · 0 评论 -
Java SE 6 新特性5: Java DB 和 JDBC 4.0
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马)。跟 Tiger(Java SE 5)相比,Mustang 在性能方面有了不错的提升。与 Tiger 在 API 库方面的大幅度加强相比,虽然 Mustang 在 API 库方面的新特性显得不太多,但是也提供了许多实用和方便的功能:在脚本,WebSe转载 2007-09-18 11:24:00 · 1076 阅读 · 0 评论 -
JDK 7 中的 Fork/Join 模式
随着多核时代的来临,软件开发人员不得不开始关注并行编程领域。而 JDK 7 中将会加入的 Fork/Join 模式是处理并行编程的一个经典的方法。虽然不能解决所有的问题,但是在它的适用范围之内,能够轻松的利用多个 CPU 提供的计算资源来协作完成一个复杂的计算任务。通过利用 Fork/Join 模式,我们能够更加顺畅的过渡到多核的时代。本文将介绍使用 JDK 7 中 Fork/Join 模式的方法转载 2007-09-18 11:27:00 · 728 阅读 · 0 评论 -
JDK、JRE、JVM之间的关系
JDK、JRE、JVM之间的关系如果安装了JDK,会发同你的电脑有两套JRE,一套位于 /jre 另外一套位于 C:/Program Files/Java/j2re1.4.1_01 目录下后面这套比前面那套少了Server端的Java虚拟机,不过直接将前面那套的Server端Java虚拟机复制过来就行了。而且在安装JDK可以选择是否安装这个位于 C:/Program Files/Java 目录下的转载 2007-09-20 17:58:00 · 2107 阅读 · 1 评论 -
如何才算掌握Java
时常看到一些人说掌握了Java,但是让他们用Java做一个实际的项目可能又困难重重,在这里,笔者根据自己的一点理解斗胆提出自己的一些对掌握Java这个说法的标准,当然对于新手,也可以提供一个需要学习哪些内容的参考。另外这个标准仅限于J2SE部分,J2EE部分的内容有时间再另说。 1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任何转载 2007-10-10 09:40:00 · 806 阅读 · 0 评论 -
Java 应用程序中的按值传递语义
在不同的java新闻组中,参数是传值还是传址一直是一个经常被争辩的话题。误解的中心是以下两个事实:1、对象是传引用的2、参数是传值的这两个能够同时成立吗?一个字:是!在java中,你从来没有传递对象,你传递的仅仅是对象的引用!一句话,java是传引用的。然而,当你传递一个参数,那么只有一种参数传递机制:传值!通常,当程序员讨论传值和传引用时,他们是指语言的参数传递机制,c++同时支持这两种机制,因转载 2007-10-17 13:08:00 · 862 阅读 · 0 评论 -
用”堆栈区数据复制”理解Java赋值和参数传递机制的心得
提纲:1、版权声明2、前言3、正文4、结论5、附注6、参考资料===========================================================================================================================1、版权声明: 本文作者:littlebat,原始出处:用”堆栈区数据复制”理解J转载 2007-10-17 13:10:00 · 775 阅读 · 0 评论 -
Java学习从入门到精通(学习过程)
Java Learning Path (一)、工具篇一、 JDK (Java Development Kit)JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的JDK是Sun公司发布的JDK转载 2007-10-12 10:14:00 · 785 阅读 · 0 评论 -
争论:Java是否应该停止增加新特性
最近,关于Java平台的未来有许多辩论,有些人认为Java应该加入更多的特征,这样才能与C#、Ruby这样的语言竞争,另一些人认为应该保持Java的稳定,以免变的过于复杂以至于难以使用。Bruce Eckel认为应该彻底停止往Java中增加新特性,这引起了一场新的辩论。在Bruce Eckel 的博文中,他说如果Java要保持主流地位,那么就需要停止进化。作为一种语言,Java已经“过于嘈杂”转载 2008-01-21 11:19:00 · 534 阅读 · 0 评论 -
OOM和JVM配置优化
OOM这个缩写就是Java程序开发过程中让人最头痛的问题:Out of Memory。在很多开发人员的开发过程中,或多或少的都会遇到这类问题,这类问题定位比较困难,往往需要根据经验来判断可能出现问题的代码。原因主要是两个:对象没有被释放(多种情况引起,往往是比较隐蔽的引用导致被Hold而无法被回收)。另一种就是真的Memory不够用了,需要增加JVM的Heap来满足应用程序的需求。最转载 2008-01-24 10:45:00 · 688 阅读 · 0 评论 -
Robocode 机器人坦克游戏开发环境介绍
历史概况 1995年,Mat Nelson进入IBM,开始接触JAVA。 2000年,随着JAVA语言成熟, Mat Nelson这个狂热的玩家看到了创建这个“他一直想玩”的游戏的机会,着手开始创建Robocode。 2001年, IBM以 alphaWorks 下载的形式发布。 2008年,Robocode1.5.2版本发布。安装要求 Java 5.0 or new转载 2008-01-21 11:23:00 · 1343 阅读 · 0 评论 -
编写并行程序:多语言指南介绍
简介并行编程曾一度是顶级编程人员面临大型超级计算问题困扰时的唯一关注点。但是,随着面向主流应用的多核处理器的出现,并行编程现已成为所有专业软件开发人员都必须了解和掌握的一项技术。并行编程也许会很难,但事实上,它只是“不一样”而已,并非“很难”。它不仅具有更为传统的串行编程的所有特点,还包含三个定义完备的附加步骤: 识别并发:分析问题,以识别能够同时执行的任务。 揭转载 2008-02-22 10:11:00 · 2071 阅读 · 0 评论 -
LinkedList 与ArrayList的性能差异
为了弄清楚 LinkedList 与ArrayList的性能差异,特作了以下几组测试:一 各插入一百万条数据: 以下是测试LinkedList:import java.util.LinkedList;import utils.system;public class Collection ...{ /** *//** * TODO 描述方法的信息,详细说明方法的功能转载 2007-12-07 10:20:00 · 1127 阅读 · 0 评论 -
JAVA操作XML的完整例子——W3C DOM篇
这是一个用JAVA W3C DOM 进行XML的的例子,包含了查询、增加、修改、删除、保存的基本操作。较完整的描述了一个XML的整个操作流程。适合刚入门JAVA XML操作的朋友参考和学习。假设有XML文件:test1.xmlxml version="1.0" encoding="UTF-8"?>books> book> name>哈里波特name> price>10price>转载 2008-03-04 10:41:00 · 599 阅读 · 0 评论 -
Java语言中对HashMap的深度分析与比较
HashMap可谓JDK的一大实用工具,把各个Object映射起来,实现了“键--值”对应的快速存取。研究完我都汗颜了,其中 hash 就是通过 key 这个Object的 hashcode 进行 hash,然后通过 indexFor 获得在Object table的索引值。 HashMap可谓JDK的一大实用工具,把各个Object映射起来,实现了“键--值”对应的快速存取。但实际转载 2007-12-17 10:49:00 · 565 阅读 · 0 评论 -
Java初学者必看:Java自动设置环境变量
刚开始编程尤其是以开始就接触Java时,往往对path和classpath不太理解。无论从理论还是实践都有些文章都能讲得很通透。但是即便如此,对于新手,依然有存在不会设置的。 不会设置这两个变量,基本的程序调试无法展开,很容易打击初学者的积极性。所以对于初学者,可能先有一个可以调试的环境比去理解path和classpath更加具有吸引力。在敲代码、调试的过程中,慢慢去体会这两个变量的作用转载 2007-12-17 11:09:00 · 914 阅读 · 0 评论 -
JAVA基础:Servlet技术及其与CGI的比较
WebSphere Application Server作为e-Business应用的核心,提供了基于Java Servlet技术的引擎,它把基本的HTTP Server扩充成为基于Java的应用服务器,提供了比CGI技术更优的性能。本文旨在对Java Servlet技术作一般性的介绍,并与传统的CGI技术进行比较。 Servlet是用Java编写的Server端程序,它与协议和平台无关转载 2007-12-17 11:21:00 · 851 阅读 · 0 评论 -
java跨平台的注意事项
使用Java语言编写应用程序最大的优点在于“一次编译,处处运行”,然而这并不是说所有的Java程序都具有跨平台的特性,事实上,相当一部分的Java程序是不能在别的操作系统上正确运行的,那么如何才能编写一个真正的跨平台的Java程序呢?下面是在编写跨平台的Java程序是需要注意的一些事情: 1. 编写Java跨平台应用程序时,你可以选择JDK1.0,1.1,1.2或支持它们的GUI开发转载 2007-12-17 22:25:00 · 717 阅读 · 0 评论 -
JAVA基础笔试、面试常见问题集合
1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 2.继承: 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原转载 2007-12-17 10:12:00 · 813 阅读 · 0 评论 -
成为java高手的八大条件
世界上并没有成为高手的捷径,但一些基本原则是可以遵循的。 1、扎实的基础 数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握它们,很难写出高水平的程序。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。因此多读一些计算机基础理论转载 2007-12-17 10:15:00 · 507 阅读 · 0 评论 -
编程基础:深入分析Java中的数据结构
是否选择了合适的数据结构进行数据处理对系统的性能有着极大的影响, JDK 中提供了常用的数据结构的实现类,比如链表、堆栈、哈希表,很多第三方开源库也进行了有益的扩展。关于这些类的原理以及使用可以参考相关的手册,在本节中重点讲解一些使用中需要注意的问题 。 1.1.1. 增量内存分配 ArrayList 、 HashMap 、 Vector 等类都允许我们向其中加入任意多的对象,从而转载 2007-12-17 10:19:00 · 604 阅读 · 0 评论 -
JAVA基础知识精华总结
1、对象的初始化 (1)非静态对象的初始化 在创建对象时,对象所在类的所有数据成员会首先进行初始化。 基本类型:int型,初始化为0。 如果为对象:这些对象会按顺序初始化。 ※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。 构造方法的作用就是初始化。 (2)静态对象的初始化 程序中主类的静态变量会在main方法执行前初始化。 不转载 2007-12-17 10:52:00 · 468 阅读 · 0 评论 -
java中四种操作xml方式的比较
1. 介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM以及广义的基于树的处理具有几个优点。首转载 2007-12-17 10:55:00 · 611 阅读 · 0 评论 -
初学入门:JAVA里字符编码的探索与理解
今天终于把JAVA里一个比较头痛的问题——字符编码弄清晰了,所以写一篇文章来纪念一下,也为大家提供一点自己的心得。 众所周知,JAVA为了国际通用,用的是UNICODE来保存里面的字符。而UNICODE只是一个种字符集,字符的存储和表示要用到一定的字符编码格式,而与UNICODE对应的字符编码格式就是我们常看到的UTF-8,UTF-16等等,而UTF-8是最常用的,所以人们常常把它和UN转载 2007-12-17 11:04:00 · 515 阅读 · 0 评论 -
入门:Java 中对文件的读写操作之比较
Java 对文件进行读写操作的例子很多,让初学者感到十分困惑,我觉得有必要将各种方法进行一次分析,归类,理清不同方法之间的异同点。 一.在 JDK 1.0 中,通常是用 InputStream & OutputStream 这两个基类来进行读写操作的。InputStream 中的 FileInputStream 类似一个文件句柄,通过它来对文件进行操作,类似的,在OutputStream转载 2007-12-17 11:14:00 · 589 阅读 · 0 评论 -
初学者入门:如何随心所欲操纵java数组
如果你做过很多java程序,你可能对java集合类很熟悉,例如Vector和ArrayList。你可以创建一个集合并向其中增加元素: List lst = new ArrayList(); lst.add(new Integer(37)); 在这个特殊的范例中,一个整型值37用于转载 2007-12-17 11:24:00 · 726 阅读 · 0 评论 -
了解Java密码扩展的基础
Java密码扩展(The Java Cryptography Extension),是JDK1.4的一个重要部分,基本上,他是由一些包构成的,这些包形成了一个框架并实现了一些加密,密钥生成算法和协议,消息认证码等算法,这篇文章将想你介绍JCE的安装和使用。 值得注意的是,尽管JCE是JDK1.4的核心包的一部分,我们将首先用JDK1.2及高一点的版本向你演示一下如果安装配置JCE(静态安装)转载 2007-12-17 11:34:00 · 726 阅读 · 0 评论