划词......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页

2007年9月24日

摘要: 一、写作此文的原因: 学过程序设计的朋友都知道,存在自调用的算法称作递归算法。 递归往往能给我们带来非常简洁非常直观的代码形势,从而使我们的编码大大简化,然而递归的思维确实很我们的常规思维相逆的,我们通常都是从上而下的思维问题, 而递归趋势从下往上的进行思维,正由于此,很多人对于递归有着深深的恐惧,我曾经也是如此,如今为把我的经验通过几个经典的例子与初学者共享,故作此文,希望能对需要者有所助益,如... 阅读全文

posted @ 2007-09-24 08:19 王君 阅读(1919) 评论(0) 推荐(0) 编辑

摘要: 我是一个java初学者碰到一些小问题,希望前辈们给我解答一下,谢谢! 原题目: 编写应用程序,利用缓冲输入流BufferedInputStream 从键盘输入字符串,当输入的字符串为“exit”时结束输入,将输入的所有字符串存放到 my file.txt中。 编写应用程序,读出“my file.txt”的内容,并将读出的内容输出到屏幕上,读文件结束后,显示“Finished reading,pro... 阅读全文

posted @ 2007-09-24 08:18 王君 阅读(547) 评论(4) 推荐(0) 编辑

2007年9月20日

摘要: 接上文 第三种:插入排序 public static int[] insertionSort(int[] a) { int n = a.length; for (int i = 1; i = 0 && temp < a[j]; j--) { a[j + 1] = a[j]; } a[j + 1] = temp; } return a; } } 算法分析: 插入排序的思想是这样的,第一层for... 阅读全文

posted @ 2007-09-20 15:58 王君 阅读(734) 评论(0) 推荐(0) 编辑

摘要: 第一种:冒泡排序 public static int[] bubbleSort(int[] a) { for (int i = 0; i a[j + 1]) { int temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } } return a; } 复杂度分析:冒泡排序是不稳定的排序算法,一共要比较((n-1)+(n-2)+...+3+2+1... 阅读全文

posted @ 2007-09-20 15:57 王君 阅读(1212) 评论(0) 推荐(0) 编辑

摘要: 1.关于数组的特点 1)在Java中,无论使用数组或容器,都有边界检查。如果越界操作就会得到一个RuntimeException异常。 2)数组只能保存特定类型。数组可以保存基本类型,容器则不能。容器不以具体的类型来处理对象,它们将所有对象都按Object类型处理。 3)容器类只能保存对象的引用。而数组既可以创建为直接保存基本类型,也可以保存对象的引用。在容器中可以使用包装类,如Int... 阅读全文

posted @ 2007-09-20 15:56 王君 阅读(553) 评论(0) 推荐(0) 编辑

摘要: 1. 异常机制 1.1 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。 1.2 传统的处理异常的办法是,函数返回一个特殊的结果来表示出现异常(通常这个特殊结果是大家约定俗称的),调用该函数的程序负责检查并分析函数返回的结果。这样做有如下的弊端:例如函数返回-1代表出现异常,... 阅读全文

posted @ 2007-09-20 15:55 王君 阅读(3634) 评论(1) 推荐(0) 编辑

摘要: 一、引言 20世纪末是万维网开始膨胀的时期,它的发展速度是十分惊人的。据统计,万维网已经连通了世界上几乎所有的国家,并且万维网正在急速发展。目前,万维网已经成为世界上最大的信息源,成为全球范围内科研、教育、商业和社会、新闻、学校和专业机构介绍、图书及娱乐等信息的集大成者。近年来对万维网的研究的两大热点是网络搜索引擎的研究和网络拓扑结构的研究。对于网络信息挖掘的首先要面对的问题就是如何提取出网站... 阅读全文

posted @ 2007-09-20 15:54 王君 阅读(747) 评论(0) 推荐(0) 编辑

2007年9月18日

摘要: 1.String类和StringBuffer类 它们都是处理字符串的类,但是它们有一个最大的区别,那就是,String对象是存储你不能改动的文本字符串,相反,如果你希望改动,则应使用StringBuffer类作为替换. eg1: ...... //omit some code String s1="You are hired!"; System.... 阅读全文

posted @ 2007-09-18 14:52 王君 阅读(639) 评论(0) 推荐(0) 编辑

摘要: 1.JAVA里没有多继承,一个类之能有一个父类。 而继承的表现就是多态。一个父类可以有多个子类,而在子类里可以重写父类的方法(例如方法print()),这样每个子类里重写的代码不一样,自然表现形式就不一样。这样用父类的变量去引用不同的子类,在调用这个相同的方法print()的时候得到的结果和表现形式就不一样了,这就是多态,相同的消息(也就是调用相同的方法)会有不同的结果。举例说明: ... 阅读全文

posted @ 2007-09-18 14:50 王君 阅读(1921) 评论(4) 推荐(0) 编辑

摘要: override可以翻译为覆盖,从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。对我们来说最熟悉的覆盖就是对接口方法的实现,在接口中一般只是对方法进行了声明,而我们在实现时,就需要实现接口声明的所有方法。除了这个典型的用法以外,我们在继承中也可能会在子类覆盖父类中的方法。在覆盖要注意以下的几点: 1、覆盖的方法的标志必须要和被覆盖的方法的标志完全匹配,才能达到覆盖的效果;... 阅读全文

posted @ 2007-09-18 14:49 王君 阅读(413) 评论(0) 推荐(0) 编辑

摘要: 一、软件下载:: 1、java 这里使用的是jdk1.4.2。 下载地址:http://dlc.sun.com/jdk/j2sdk-1_4_2_07-windows-i586-p.exe; 2、tomcat 这里的tomcat的版本是5.0的,安装版或是解压版都是可以的。 下载地址:http://apache.linuxforum.net/dis ..... 阅读全文

posted @ 2007-09-18 14:47 王君 阅读(1036) 评论(2) 推荐(0) 编辑

2007年9月17日

摘要: 目前,JAVA是开发人员的热宠,很多论坛都有不少热爱JAVA的开发人员,也有不少想成为JAVA程序员,但苦于不知道该如何学习,也不清楚该学些什么知识才能成为一个JAVA程序员。本人在这里抛砖引玉,和大家讨论成为一个JAVA初级程序员应该具有的知识,与大家共享。 个人认为想成为一个合格的JAVA初级程序员应该具备如下知识: 一、面向对象的知识:JAVA是一个面向对象的开发语言,因此熟悉面... 阅读全文

posted @ 2007-09-17 08:21 王君 阅读(894) 评论(0) 推荐(0) 编辑

摘要: 时常看到一些人说掌握了Java,但是让他们用Java做一个实际的项目可能又困难重重,在这里,笔者根据自己的一点理解斗胆提出自己的一些对掌握Java这个说法的标准,当然对于新手,也可以提供一个需要学习哪些内容的参考。另外这个标准仅限于J2SE部分,J2EE部分的内容有时间再另说。 1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知道任... 阅读全文

posted @ 2007-09-17 08:08 王君 阅读(694) 评论(0) 推荐(0) 编辑

摘要: 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。 2.OOP中最重要的思想是类,类是模板是蓝图,从类中构造... 阅读全文

posted @ 2007-09-17 08:01 王君 阅读(586) 评论(0) 推荐(0) 编辑

摘要: Abstractclass和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstractclass和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstractclass和interface的选择显得比较随意。其实,两者之间还是有很大的区... 阅读全文

posted @ 2007-09-17 08:00 王君 阅读(819) 评论(1) 推荐(0) 编辑

摘要: import java.io.*; import java.util.regex.*; public class Printer { public static void main(String[] args) { System.out.println(" Please enter the input string: "); BufferedReader reader = new Buffer... 阅读全文

posted @ 2007-09-17 07:59 王君 阅读(424) 评论(0) 推荐(0) 编辑

2007年9月15日

摘要: Java的IO操作都是基于流进行操作的,为了提高读写效率一般需要进行缓冲。 简单的示例程序如下: /** * 读出1.txt中的内容,写入2.txt中 * */ import java.io.*; public class ReadWriteFile{ public static void main(String[] args){ try{ File read = new File("... 阅读全文

posted @ 2007-09-15 11:36 王君 阅读(580) 评论(0) 推荐(0) 编辑

摘要: 一、static 请先看下面这段程序: public class Hello{ public static void main(String[] args){ //(1) System.out.println("Hello,world!"); //(2) } } 看过这段程序,对于大多数学过Java 的从来说,都不陌生。即使没有学过Java,而学过其它的高级语言,例如C,那你也... 阅读全文

posted @ 2007-09-15 11:28 王君 阅读(3077) 评论(4) 推荐(2) 编辑

摘要: 通过用static来定义方法或成员,为我们编程提供了某种便利,从某种程度上可以说它类似于C语言中的全局函数和全局变量。但是,并不是说有了这种便利,你便可以随处使用,如果那样的话,你便需要认真考虑一下自己是否在用面向对象的思想编程,自己的程序是否是面向对象的。好了,现在开始讨论this&super这两个关键字的意义和用法。 在Java中,this通常指当前对象,super则指父类的。当你想要引用... 阅读全文

posted @ 2007-09-15 11:26 王君 阅读(362) 评论(0) 推荐(0) 编辑

摘要: 现在有好多初学jsp的网友经常会问数据库怎么连接啊,怎么老出错啊?所以我集中的在这写篇文章供大家参考,其实这种把数据库逻辑全部放在jsp里未必是好的做法,但是有利于初学者学习,所以我就这样做了,当大家学到一定程度的时候,可以考虑用MVC的模式开发。在练习这些代码的时候,你一定将jdbc的驱动程序放到服务器的类路径里,然后要在数据库里建一个表test,有两个字段比如为test1,test2,可以用下... 阅读全文

posted @ 2007-09-15 11:22 王君 阅读(364) 评论(0) 推荐(0) 编辑

2007年9月10日

摘要: 1.浅复制与深复制概念 ⑴浅复制(浅克隆) 被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象,而不复制它所引用的对象。 ⑵深复制(深克隆) 被复制对象的所有变量都含有与原来的对象相同的值,除去那些引用其他对象的变量。那些引用其他对象的变量将指向被复制过的新对象,而不再是原有的那些被引用的对象。换言之,深... 阅读全文

posted @ 2007-09-10 11:12 王君 阅读(745) 评论(0) 推荐(0) 编辑

摘要: 归纳一些网上取JAVA路径的方法: 注明:如果从ANT启动程序,this.getClass().getResource("")取出来的比较怪,直接用JAVA命令行调试就可成功。 得到classpath和当前类的绝对路径的一些方法 获得CLASSPATH之外路径的方法: URL base = this.getClass().getResource(""); //先获得本类的所在位置,如... 阅读全文

posted @ 2007-09-10 11:10 王君 阅读(764) 评论(0) 推荐(0) 编辑

2007年9月5日

摘要: 一、JUnit简介 JUnit是基于面向对象构建的java单元测试框架。 JUnit是开放源代码项目,可按需要进行扩展。 二、安装JUnit 首先获取JUnit的软件包,从http://www.junit.org下载最新的软件包。 将软件包在适当的目录下解包。 这样在安装目录下找到一个名为junit.jar的文件,将这个jar文件加入 CLASSPATH系统变量。... 阅读全文

posted @ 2007-09-05 14:57 王君 阅读(817) 评论(0) 推荐(0) 编辑

摘要: 好文章,大家共勉: 1. 敏捷是“一个”过程 敏捷不是一个过程,是一类过程的统称,它们有一个共性,就是符合敏捷价值观,遵循敏捷的原则。 敏捷的价值观如下: 个体和交互 胜过 过程和工具 可以工作的软件 胜过 面面俱到的文档 客户合作 胜过 合同谈判 响应变化 胜过 遵循计划 由价值观引出的12条敏捷原则: 我们最优先要做的是通过尽早的、持续的交付有价... 阅读全文

posted @ 2007-09-05 13:47 王君 阅读(483) 评论(0) 推荐(0) 编辑

摘要: 人生就像是一盏灯。时而光明、时而暗淡。但总有干沽的一刻:那便是人生的终点。 人生就像是一条路。时而平坦、时而坎坷。但总有尽头的一刻:那便是人生的终点。 人生就像是一场戏。时而精彩、时而乏味。但总有谢幕的一刻:那便是人生的终点。 阅读全文

posted @ 2007-09-05 07:56 王君 阅读(480) 评论(1) 推荐(0) 编辑

2007年9月4日

摘要: 这篇文章将向你介绍Junit,一个用来在项目中进行测试和调试的工具。在介绍完TDD(以测试驱动开发)理论后,将进一步讲解怎样在流行的Eclipse中建立你自己的JUnit测试。向你展示如何测试Hello World这样简单的程序。 许多书上都讨论了自动测试,但是只有很少的著作注意到这么一个问题,那就是怎样把这些测试组织起来。随着测试的增加,放置和调用这些测试却变得更加麻烦。这将成... 阅读全文

posted @ 2007-09-04 22:11 王君 阅读(864) 评论(0) 推荐(0) 编辑

2007年9月3日

摘要: 用XP进行开发的过程,unit test是必不可少的环节。作为unit test,junit是首选的工具。本文从使用目的、如何使用、以及使用中需要考虑的问题,简略描述了junit的基本用法。 使用目的 junit是java中书写unit test的framework,目前一些流行的unit test工具大都都是在junit上扩展而来的。目前它的版本是junit3.8.1,可以从www... 阅读全文

posted @ 2007-09-03 23:06 王君 阅读(1580) 评论(0) 推荐(0) 编辑

2007年8月31日

摘要: 介绍几个比较常见的开源协议: Mozilla Public License MPL License,允许免费重发布、免费修改,但要求修改后的代码版权归软件的发起者。这种授权维护了商业软件的利益,,它要求基于这种软件得修改无偿贡献版权给该软件。这样,围绕该软件得所有代码得版权都集中在发起开发人得手中。但MPL是允许修改,无偿使用得。MPL软件对链接没有要求。 SD开源协议 BSD开源... 阅读全文

posted @ 2007-08-31 20:57 王君 阅读(365) 评论(0) 推荐(0) 编辑

2007年8月28日

摘要: 信息技术的发展时间虽然不长,但其爆炸式的发展速度使信息技术迅速覆盖社会和人类生活的各个角落。程序员们是这场信息化浪潮的见证者之一,更是其中的主要参与者,这是时代赋予每个程序员的机会和责任。 信息技术的更新速度是惊人的,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封。本人在工作期间曾看见过很多程序员只要有闲暇时间就浏览一些没有太大作用的网页,在网上聊天,打游戏,浪费了大量的时间,十... 阅读全文

posted @ 2007-08-28 07:56 王君 阅读(660) 评论(3) 推荐(0) 编辑

摘要: 引自:http://www.it.com.cn/f/edu/053/29/93843.htm Enum作为Sun全新引进的一个关键字,看起来很象是特殊的class, 它也可以有自己的变量,可以定义自己的方法,可以实现一个或者多个接口。 当我们在声明一个enum类型时,我们应该注意到enum类型有如下的一些特征。 1.它不能有public的构造函数,这样做可以保证客户代码没有办法... 阅读全文

posted @ 2007-08-28 07:52 王君 阅读(296) 评论(0) 推荐(0) 编辑

2007年8月14日

摘要: XML作为全球通用的结构化语言,越来越受人们青睐,各种开发平台(比如Microsoft Studio系列、Oracle系列、Inprise Borland系列等)也都把支持XML开发作为宣传口号之一。在许多项目中利用XML数据交换信息,省去了许多麻烦事,不用制定繁锁的数据格式,利用XML数据易于表达,也利于一线开发者跟踪调试。 在XML应用中,最常用也最实用的莫过于XML文件的读写,所以笔者通过一... 阅读全文

posted @ 2007-08-14 12:16 王君 阅读(1036) 评论(1) 推荐(1) 编辑

摘要: Java过时了吗?听起来有些人会感到惊讶和不屑,但是网上关于Java过时争论却一直没有停止过,是谁在高谈Java过时论,难道Java真的走到了生命的结点了吗? RoR挑战Java Web领域 Java过时论的传言由来以久,随便在Google上一搜就能搜到191,000条数据,这些数据足可以说明很多人在关心Java技术的过时与否,在众帖子最显眼的便是崇尚敏捷WEB开发的Ribbin大师,Ri... 阅读全文

posted @ 2007-08-14 12:15 王君 阅读(512) 评论(1) 推荐(0) 编辑

摘要: 对于任何一个完整的应用系统,完善的认证和授权机制是必不可少的。Acegi Security(以下简称Acegi)是一个能为基于Spring的企业应用提供强大而灵活安全访问控制解决方案的框架,Acegi已经成为Spring官方的一个子项目,所以也称为Spring Security。它通过在Spring容器中配置一组Bean,充分利用Spring的IoC和AOP功能,提供声明式安全访问控制的功能。虽然... 阅读全文

posted @ 2007-08-14 12:14 王君 阅读(685) 评论(0) 推荐(0) 编辑

摘要: 我们在定义常量的时候,可以把常量定义在接口里面,如: package org.zy.demo.base;public interface InterfaceDemo {final String name="this is my name";}上面是我定义的接口和常量。 常量的定义没有指明 public static 我实现此接口: package org.zy.demo.base;public c... 阅读全文

posted @ 2007-08-14 12:13 王君 阅读(367) 评论(0) 推荐(0) 编辑

摘要: import java.awt.event.ActionEvent;import javax.swing.AbstractAction;import javax.swing.Action;import javax.swing.JEditorPane;import javax.swing.KeyStroke;import javax.swing.... 阅读全文

posted @ 2007-08-14 12:11 王君 阅读(590) 评论(0) 推荐(0) 编辑

摘要: 现在许多系统的注册、登录或者发布信息模块都添加的随机码功能,就是为了避免自动注册程序或者自动发布程序的使用。 验证码实际上就是随机选择一些字符以图片的形式展现在页面上,如果进行提交操作的同时需要将图片上的字符同时提交,如果提交的字符与服务器session保存的不同,则认为提交信息无效。为了避免自动程序分析解析图片,通常会在图片上随机生成一些干扰线或者将字符进行扭曲,增加自动识别的难度。 在... 阅读全文

posted @ 2007-08-14 12:10 王君 阅读(1234) 评论(2) 推荐(0) 编辑

2007年8月12日

摘要: 1.JAVA里没有多继承,一个类只能有一个父类。而继承的表现就是多态。一个父类可以有多个子类,而在子类里可以重写父类的方法(例如方法print()),这样每个子类里重写的代码不一样,自然表现形式就不一样。这样用父类的变量去引用不同的子类,在调用这个相同的方法print()的时候得到的结果和表现形式就不一样了,这就是多态,相同的消息(也就是调用相同的方法)会有不同的结果。举例说明: //父类publ... 阅读全文

posted @ 2007-08-12 22:11 王君 阅读(6407) 评论(12) 推荐(0) 编辑

摘要: java这种语言可以编写很多程序,图形的程序自然不例外。AWT是java图形编程的基础。AWT就是抽象窗口工具集(Abstract Window Toolkit),是java中支持图形化界面GUI设计的一个工具集,也是绘制其它图形的基础部分。 java.awt.*是java语言中的第3大包,这里面包含着相当多的工具,像是字体,颜色,事件等等。首先我们看一个构造GUI程序的例... 阅读全文

posted @ 2007-08-12 22:02 王君 阅读(762) 评论(0) 推荐(0) 编辑

摘要: 在我们学习数组那节课里,我们学会了用for迭代数组里面的各个元素,这是很方便的,也是在之前的jdk的版本中没有的功能。For语句除了循环和找数组之外还有,迭代集合类等等功能。这个for语句它抛弃了Iterator(迭代),使得遍历集合类变得简单。 看看以前版本的Iterator是怎么做的: public void testIterator() throws IOExce... 阅读全文

posted @ 2007-08-12 22:01 王君 阅读(492) 评论(0) 推荐(0) 编辑

2007年8月10日

摘要: 这也是个比较重要的东西,因为String字符串的应用范围很广。但是有些时候使用StringBuffer更好一些。有些时候还不能用String。到了jdk5的时候,又补充了个东西StringBuilder。我们来看看他们的区别。 String 的长度是不可变的,StringBuffer的长度是可变的。如果对字符串中的长度经常进行操作,特别是内容要修改时,使用StringBuffer,如果最后需要St... 阅读全文

posted @ 2007-08-10 16:54 王君 阅读(802) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 ··· 10 下一页