
JAVA Programming Language
文章平均质量分 68
start_java
这个作者很懒,什么都没留下…
展开
-
25级阶梯,每次走一步或两步,问最多有多少种走法
分析:共有25个阶梯,每一步走法共有两种,走一级,或是走两级。分两种情况:如果第一次走两级的话,那么还有25-2=23级阶梯要走。再求剩下23级阶梯共有多少走法。如果第一次走一级的话,那么还有25-1=24级阶梯要走,于是走完25级阶梯的方法总数,就等于爬完23级阶梯总共方法+爬完24级阶梯的方法总数。而23极又可再分为(23-1)、(23-2)级阶梯。依次类推,可见这是一个典型的递归类型。我们可原创 2005-06-26 21:54:00 · 1417 阅读 · 0 评论 -
转换中文的方法
public String getStr(String str) { try { String temp_p=str; byte[] temp_t=temp_p.getBytes("ISO8859_1"); String temp=new String(temp_t); } catch(Exception e) { e.printStackTrace(); } return "null"; }原创 2005-06-26 22:41:00 · 904 阅读 · 1 评论 -
JDK1.5 注释语法(Annotations)新鲜试用
在我的上一篇文章JDK1.5新特性介绍中,我们介绍了JDk1.5新增的6个基本特性,本文继续介绍JDK1.5另外一个秘密武器,新的注释语法(Annotations)。 其实说起注解语法,对于任何一个Java开发人员来说都已经耳熟能详了,我们每天都在使用着 @author, @param,等等编写注释,然后用javadoc生成文档。Java的这种方便的文档生成方法受到了开发者的普遍赞誉。而从J原创 2005-06-26 22:47:00 · 787 阅读 · 0 评论 -
J2SE5.0新特性之静态导入
J2se5.0之前,如果需要使用其他类的静态方法,如java.lang.Math中的方法,需要写以下的代码:double value = Math.log(100)*Math.PI; 现在你只需在静态导入,然后就可以直接在代码中使用静态方法和静态字段:import static java.lang.Math.*;…double value = log(100)*PI; 看一个详细的例子。我们先建原创 2005-06-26 22:55:00 · 766 阅读 · 0 评论 -
J2SE5.0新特性之范型编程
本章主要参考sun公司文档。 C++程序员对范型编程肯定不陌生,尤其在STL大行其道的时候,C#2.0也将实现范型编程的功能。Java也不甘示弱,也推出了范型编程的语言新特性。 1.一个简单的范型示例在以前,你可能遇到过这样的代码:List list = new LinkedList(); list.add(“麻省理工”); list.add(“普林斯顿”); list.add(“伯克利”); S原创 2005-06-26 22:59:00 · 784 阅读 · 0 评论 -
猛虎出山: Java 5.0的新语言特性
2004年下半年,Sun公司发布了开发代号为“Tiger”的J2SE 5.0,揭开了Java发展的一个重要里程碑。在过去的Java升级中更多的是进行一些库函数的改进,而这次则直接从语法层面上进行了增强。直接从1.4跳到5.0(Sun本来是打算用1.5.0这个版本号的),单从版本号的变化上就可以看出这次升级的力度是如此之大。那么,到底有些什么改变呢?下面就请随我窥视一二(其中所举的代码例子均摘自于《原创 2005-06-26 23:02:00 · 813 阅读 · 0 评论 -
61条面向对象设计的经验原则
你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 ----- Arthur J.Riel (1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最基本公有接口[例如,拷贝操作(深拷贝和浅拷贝)、相等性判断原创 2005-06-26 23:55:00 · 770 阅读 · 0 评论 -
【转载】Java学习过程应该深入理解的一些重点
主要说说Java的几大块吧,无法说得很细,因为其实每一块拿出来都能说很多,我就说一下这几块学习的时候的重点或者应该注意的东西。 数值类型: 虽然是面向对象的语言,但是在使用上数值类型还是必不可少的,如果在C的学习中已经掌握了C的数值计算和转换规则,那我想这里应该没有什么问题,只有两点需要注意:1、14.0这样的浮点常量被认为是double型,只有加上f后缀才是float型的;2、整数常量原创 2005-06-27 01:37:00 · 859 阅读 · 0 评论 -
升级到J2SE 5平台的5大理由
本文给出了升级到Java 2 Platform, Standard Edition (J2SE platform) 5.0的5大理由。每个理由都通过大量数据和参考资料来证实升级到5.0版本将大大降低开发与运行成本。J2SE 5.0(代号Project Tiger)于2004年9月底发布。它是Java平台多年来的重大更新之一。Java社区为其新增功能欢呼不已,然而这些新增功能还无法全面地描述此版本的原创 2005-06-27 01:40:00 · 877 阅读 · 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原创 2005-06-27 01:48:00 · 1064 阅读 · 0 评论 -
最好的Java程序员免费学习材料(English)
最好免费的Training 和Tutorials资源:Java Programming Resources 19 Free Java Courses from IBM Introduction to Programming Using Java -Full TOC -PDF version Studying for Java Certification on the Web Thinking I原创 2005-06-27 02:12:00 · 1179 阅读 · 0 评论 -
【转载】Java堆的管理--垃圾回收
Java堆的管理--垃圾回收作者:刘学超作者简介刘学超,华中师范大学计算机科学系网络与通讯研究所,你可以通过shuechao_lau@hotmail.com与他联系。1 引言Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指原创 2005-06-27 02:25:00 · 812 阅读 · 0 评论 -
【转载】Java虚拟机的深入研究
Java虚拟机的深入研究作者:刘学超 1 Java技术与Java虚拟机说起Java,人们首先想到的是Java编程语言,然而事实上,Java是一种技术,它由四方面组成: Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。它们的关系如下图所示:图1 Java四个方面的关系运行期环境代表着Java平台,开发人员编写Java代码(.java文件),然后将之原创 2005-06-27 02:28:00 · 1020 阅读 · 0 评论 -
【转载】学不可以已——我一年Java之路的回顾,反思以及展望(下)
在暑假的学习中情况也是像我以前计划的那样发展,首先看的一本书就是《Java Network Programming》,Bruce确实推荐了一本好书,这本书循序渐进并且讲的非常的透彻,学完这本书然后再学习新的net的API以及NIO是非常轻松的,这本书我花了10天看完了,自我感觉好极了^_^。与此同时也每天练习《Java Cookbook》中的代码,这个假期我把那本书的代码全部亲自实践了一遍,正因为原创 2005-07-20 16:20:00 · 1208 阅读 · 0 评论 -
好的JAVA风格(英译)
介绍作为一个已经工作了很多年的软件开发者和咨询师,我看过大量形形色色的程序语言代码。其中有文雅的也有丑陋的,但是不幸的是,它们中大多数代码都是丑陋的。 我希望能够说服你们,我的开发伙伴们,我们应该足够的重视我们的代码风格,尤其是那些在应用程序中提供用户接口和其他可视化部分的代码。在这两部分系列的第一部分, 我会解释为什么我们应该关心我们的代码外观,然后阐述一些好的JAVA风格的一般要素。为原创 2005-07-20 15:00:00 · 1039 阅读 · 0 评论 -
【转载】学不可以已——我一年Java之路的回顾,反思以及展望(上)
大约就是在去年的这个时候吧,Java这个字眼就开始占据了我学习计划中的重要席位,从那时候那杯冒热气的咖啡一直陪伴我到今天。也不知道当时为什么要学习Java,又是为什么选择了Java。因为我记得当时的我,心中所想和现在可谓是大相径庭!那时我曾天真的想着,我将来学管理,你们这些学计算机的人出来也难逃给管理界人士做下属的命运,现在想来,那时是多么的无知和幼稚,我怕现在的很多大学生,更确切的说很多像我们专原创 2005-07-20 16:18:00 · 1041 阅读 · 0 评论 -
Java内存泄露问题分析
Java内存泄露问题分析 作者:csdn 来源:csdn很多人在谈论内存泄露问题,当然对于c/c++来说,这个应该是老掉牙的问题,但是很多Java人员也越来越多得讨论这个问题,我这里写个小结,希望对大家有一定的参考价值。 内存泄漏的慨念 1.c/c++是程序员自己管理内存,Java内存是由GC自动回收的。 我虽然不是很熟悉C++,不过这个应该没有犯常识性错误吧。 2.什么是内存泄露?原创 2005-08-05 15:31:00 · 1376 阅读 · 0 评论 -
初識JAVA
Java告诉我说:世间万物皆为对象!于是,我不断的在互联网Search,以更新我的QQ列表;然后以代码复用技术重复着那一经典:Hello!终于,当我在QQ的多线程间频繁切换时,我以为,我已经持有了对象。但一天,某Class对我说:你不是我的对象!这一刻,我心头只有一种形态:这种异常应该在执行期前得以清理。所以,我至今仍象没有分配到执行权饥饿的线程,苦苦思索生活与设计的模式;直到我领悟到Java的通原创 2005-08-04 13:03:00 · 1017 阅读 · 0 评论 -
Java异常处理的陋习展播
原创 2005-06-26 22:28:00 · 702 阅读 · 0 评论 -
【转载】java新手必读,一些入门知识
java新手必读,一些入门知识 文章很好,我初学JAVA时,也是在这篇文章的指导下进行的,在此不妨推荐给广大将要学习JAVA的朋友! 1、jdk就是j2se,jdk1.1.8版本以后改成为j2se, 下载地址:http://java.sun.com/j2se/downloads.html 2、jre是java原创 2005-06-27 02:40:00 · 979 阅读 · 0 评论 -
Java学习推荐书籍
书名:Java编程思想URL: http://www.china-pub.com/computers/common/info.asp?id=7241评论:其实这本书并不适合作为Java入门使用,有位道友人为:看这种书有种看马克思选集的感觉,车轱辘话来回说,本来很简单的概念, 看过他的复杂的例子后,就云山雾绕了。当然,治疗失眠的效果是不错的。我本人读这本书也是读了N多遍吧,总是感觉无法掌握其中一些概原创 2005-06-27 02:35:00 · 1234 阅读 · 0 评论 -
J2SE5.0新特性之枚举类型
J2SE5.0新特性之枚举类型 在传统的设计中,为了达到c、c++的枚举的功能,我们一般在类中声明几个常量:public static final String BELLE_XISHI = “西施”;public static final String BELLE_WANGZHAOJUN = “王昭君”;public static final String BELLE_DIAOCHAN = “貂禅原创 2005-06-26 22:49:00 · 912 阅读 · 0 评论 -
J2SE5.0新特性之Foreach
C#中提供了Foreach的用法:foreach (string item in f){ Console.WriteLine(item);} Java也增加了这样的功能:package com.kuaff.jdk5; import java.util.*;import java.util.Collection; public class Foreach{ private Collect原创 2005-06-26 22:52:00 · 815 阅读 · 0 评论 -
J2SE5.0新特性之可变长参数
有时候,我们传入到方法的参数的个数是不固定的,为了解决这个问题,我们一般采用下面的方法:1. 重载,多重载几个方法,尽可能的满足参数的个数。显然这不是什么好办法。2. 将参数作为一个数组传入。虽然这样我们只需一个方法即可,但是,为了传递这个数组,我们需要先声明一个数组,然后将参数一个一个加到数组中。 现在,我们可以使用可变长参数解决这个问题。声明可变长参数方式如下: public void m原创 2005-06-26 22:53:00 · 813 阅读 · 0 评论 -
Java常见面试题
第一,谈谈final, finally, finalize的区别。 final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为fi原创 2005-06-26 23:24:00 · 791 阅读 · 0 评论 -
Java 理论与实践: 关于异常的争论
关于在 Java 语言中使用异常的大多数建议都认为,在确信异常可以被捕获的任何情况下,应该优先使用检查型异常。语言设计(编译器强制您在方法签名中列出可能被抛出的所有检查型异常)以及早期关于样式和用法的著作都支持该建议。最近,几位著名的作者已经开始认为非检查型异常在优秀的 Java 类设计中有着比以前所认为的更为重要的地位。在本文中,Brian Goetz 考察了关于使用非检查型异常的优缺点。原创 2005-06-26 23:44:00 · 757 阅读 · 0 评论 -
如何优化JAVA程序设计和编码,提高JAVA性能
通过使用一些辅助性工具来找到程序中的瓶颈,然后就可以对瓶颈部分的代码进行优化。一般有两种方案:即优化代码或更改设计方法。我们一般会选择后者,因为不去调用以下代码要比调用一些优化的代码更能提高程序的性能。而一个设计良好的程序能够精简代码,从而提高性能。 下面将提供一些在JAVA程序的设计和编码中,为了能够提高JAVA程序的性能,而经常采用的一些方法和技巧。 1.对象的原创 2005-06-27 00:53:00 · 880 阅读 · 0 评论 -
【转载】面向对象的思维方法
我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭,因为我早以习惯用C来编写程序,很欣赏C的简洁性和高效性,喜欢C简练而表达能力丰富的风格,特别忍受不了Java运行起来慢吞吞的速度,相对冗长的代码,而且一个很简单的事情,要写好多类,一个类调用一个类,心里的抵触情绪很强。我对Java的面向对象的特性琢磨良久,自认为有所领悟,也开始有意识的运用OOP风格来原创 2005-06-27 01:44:00 · 926 阅读 · 0 评论 -
Java桌面应用程序设计新贵:SWT 简介
Java语言的声望和它在桌面应用程序(GUI程序)所取得的成就显然极不相符,至今仍然很少能看到非常成功Java桌面程序。虽然有JBuilder,Netbean,JProbe等大型软件作为代表,但这仍不能证明Java的GUI程序是成功的:它们的外观总是和同一操作系统平台下的其它软件显得格格不入。对机器配置的需求也似乎永无止境,这使得它们只能被一些总是拥有当前最高性能PC的程序员们所容忍,或是那些不在原创 2005-06-27 01:55:00 · 1018 阅读 · 0 评论 -
【转载】Java类装载体系中的隔离性
Java类装载体系中的隔离性作者:盛戈歆作者简介盛戈歆,软件工程师,你可以通过shenggexin@topwaver.com与他联系。正文:Java中类的查找与装载出现的问题总是会时不时出现在Java程序员面前,这并不是什么丢脸的事情,相信没有一个Java程序员没遇到过ClassNotException,因此不要为被人瞅见自己也犯这样的错误而觉得不自然,但是在如果出现了ClassNotFoundE原创 2005-06-27 02:22:00 · 951 阅读 · 0 评论 -
【转载】Java虚拟机类装载:原理、实现与应用
Java虚拟机类装载:原理、实现与应用作者:刘学超一、引言Java虚拟机(JVM)的类装载就是指将包含在类文件中的字节码装载到JVM中, 并使其成为JVM一部分的过程。JVM的类动态装载技术能够在运行时刻动态地加载或者替换系统的某些功能模块, 而不影响系统其他功能模块的正常运行。本文将分析JVM中的类装载系统,探讨JVM中类装载的原理、实现以及应用。二、Java虚拟机的类装载实现与应用2.1 装原创 2005-06-27 02:30:00 · 1018 阅读 · 0 评论 -
每个初学者都应该搞懂的问题
对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于优快云的经典老贴。问题一:我声明了什么!String s = "Hello world!";许多人都做过这样的事情,但是,我们到底声明了什么?回答通常是:一个String,内容是“Hello world!”。这样模糊的原创 2005-06-26 21:22:00 · 794 阅读 · 0 评论 -
Java工具包的安装配置和使用
1.下载j2sdk 1.4.1或更高版本 (http://java.sun.com,建议同时下载其Java Documentation,这是Java帮助文档) 2.运行刚刚下载的j2sdk-1_4_1_02-windows-i586.exe文件进行正式安装(以下假设安装于c:/j2sdk1.4.1,建议安装路径不要有空格,不宜安装在/Program Files目录下!)。 3.设置原创 2005-06-26 22:34:00 · 800 阅读 · 0 评论 -
熟练掌握JDK1.5枚举类型
在上一篇文章JDK1.5新特性简介里面,我们讨论了Enum的最简单形式,即类似于,public enum Color{ Red, Green, Blue;} 这篇文章我们来详细介绍一下enum的各项特征。Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口。 当我们在声明一个enum类原创 2005-06-26 22:38:00 · 820 阅读 · 0 评论 -
J2SE5.0新特性之元数据
元数据,在java中也叫注释、注解。微软的.net从开始设计时就有这个功能,不过它的术语叫属性。这时一个强大的功能,程序员如果想挣钱,得好好研究它,因为在将来的j2ee开发中,广泛的使用它,包括ejb的声明,IOC中的注入等。 IBM网站有篇文章详细介绍了它,挺好的一篇文章。http://www-900.ibm.com/developerWorks/cn/java/j-annotate1/http原创 2005-06-26 22:57:00 · 846 阅读 · 0 评论 -
JAVA面试试题集
1、面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继原创 2005-06-26 23:48:00 · 930 阅读 · 0 评论 -
【转载】分享Swing学习的一些经验
首先是要有一定的Java基础, 入门我推荐的是sun网站上的JFC tutorial http://java.sun.com/docs/books/tutorial/uiswing/index.html 入门之后的书籍呢? 中文的比较经典,比较系统的Swing书籍是 JAVA2图形设计卷2:SWING http://www.dearbook.com.cn/book/viewbook.aspx?pn原创 2005-06-27 00:55:00 · 922 阅读 · 0 评论 -
【转载】java 面试中的一道编写一个截取字符串的函数
编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。package string;class SplitString { private String str; private int byteNum; public S原创 2005-06-27 01:08:00 · 896 阅读 · 0 评论 -
【转载】JAVA代码编写的30条建议
JAVA代码编写的30条建议 作者:http://blog.youkuaiyun.com/cswcafe/ 来源:http://blog.youkuaiyun.com/cswcafe/JAVA代码编写的30条建议 (1) 类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如: ThisIsAClassName thisIsMe原创 2005-08-05 15:28:00 · 893 阅读 · 0 评论