- 博客(37)
- 收藏
- 关注
原创 大学时候想的一个算法——计算数组中最大和序列
本文与java语言无关,纯粹就是个解决问题的想法问题:给定一个数组,要求求出数组中连续数和最大的索引对。比如,给定一个数组,里面有正数有负数和0。其中肯定有一个连续的序列(连续的,中间不能间断),比如说是索引3到索引5,这个序列的和是这个数组中连续序列中最大的,别的都没这个大。{0,2.-1,9,7.6,-8,16},这个数组中就是索引三到索引五这个连续序列的和最大。要求算法的时间复杂度问O(n)
2008-08-19 13:56:00 2022 3
原创 Eclipse类加载机制带来的问题
除了核心类外,eclipse的功能都是由插件提供的。插件之间经常会互相扩展,这些插件之间难免要使用到彼此的类。Eclipse给每一个插件都分配的一个classloader来负责加载其中的类。所以默认情况下,Eclipse的不同插件中的类是彼此不可见的。在两种情况下Eclipse插件可能用到其它插件的类。一是直接添加plug-in dependence,然后在程序中直接使用。然后是把extens
2007-07-04 17:11:00 2010
转载 为什么Java不支持创建范型数组?
http://www.blogjava.net/sean/archive/2005/08/09/9630.html 最近看到BlogJava上有人在讨论为什么Java范型不支持数组http://www.blogjava.net/myqiao/archive/2005/08/08/9580.html 我想这个问题的答案是:因为这样做会破坏类型安全。核心的问题在于Java范型和C#范型
2007-01-19 20:12:00 1579
原创 报LinkageError的原因(1)
LinkageError是一个比较棘手的异常,准确的说它是一个Error而不是Exception。java api对它没有直接的解释,而是介绍了它的子类: Subclasses of LinkageError indicate that a class has some dependency on another class; however, the latter class has
2006-12-11 20:28:00 12115
原创 关于java数组的深度思考
刚刚开始接触java数组的人都会听到一句类似的话:java是纯面向对象的语言,他的数组也是一个对象。于是乎,我就按照一个对象的方式来使用数组,心安理得。直到我接触到C的数组后,才发现将数组作为一个类来使用在实现上是多么的“不自然”。首先我们看一下表面现象,数组创建的时候采用的是如下语句:MyClass[] arr = new MyClass[9];而普通类采用的是如下语句:MyClass obj
2006-09-18 14:18:00 1632
原创 使用SAX解析msn聊天记录文档的java小程序
SAX是一种基于事件驱动模式的XML解析API,好处是快,而且节省内存,坏处是程序编写起来相对复杂,而且给人感觉不够OO。最好用的还是DOM,但是占内存太多,极限的时候会引起OutOfMemory异常。闲话就说道这里,下面开始说程序。sun的JDK1.5中包含我下面程序将用到的所有import的类,所以运行的时候不需要第三方jar包。 //--------------------
2006-09-15 15:49:00 1704
原创 Javasssist初探(需要对Java的ClassLoader机制有一些了解)
Javassist可以用来动态生成java类,就好像js可以生成可执行的js代码一样。javassist是JBoss的一个子项目,用处的话可能是在对EJB提供支持的时候,将声称各种接口的实现类和代理类。下面给出一个例子,在这个例子中一共有三个类:DirectLoader自定义类加载器;IAccess是接口类(我们动态生成的类要实现这个接口) ;MainTest完成主要逻辑的类,其中javass
2006-09-12 17:07:00 3381
原创 Timer和TimerTask的使用
这两个类使用起来非常方便,可以完成我们对定时器的绝大多数需求Timer类是用来执行任务的类,它接受一个TimerTask做参数Timer有两种执行任务的模式,最常用的是schedule,它可以以两种方式执行任务:1:在某个时间(Data),2:在某个固定的时间之后(int delay).这两种方式都可以指定任务执行的频率.看个简单的例子:import java.io.IOExc
2006-09-11 13:58:00 1367
原创 ${}的使用
在我使用循环标签(logic:iterator)内嵌套select标签的时候,经常会遇到一个烦人的问题。需要将循环标签中定义的bean的一个属性的数值赋值给select的option的value属性,这个时候如果使用bean:write标签,则会报错,无法成功赋值。这时候,如果还想使用select标签,可以使用jsp新的特性解决:1:在page、requset、session、applicatio
2006-09-04 11:55:00 1773
原创 记录一下连接各种数据库的url,备忘。
Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。 一、连接各种数据库方式速查表 下面罗列了各种数据库使用JDBC连接的方式,可以作为一个
2006-08-11 16:53:00 1399
原创 Array类对数组的操作
Array通过反射,封装了一系列对数组的操作。下面举例说明一下,ps,例子是抄来的,呵呵 import java.lang.reflect.*;public class array2 { public static void main(String args[]) { int dims[] = new int[]{5, 10, 15}; Object arr =
2006-08-09 17:29:00 1258
原创 得到方法调用者和java中的位操作符
获取方法的调用者如果你写了一个超级复杂超级大的项目,在项目后期调试修改的时候,突然想知道到底是哪些类调用了ImportantClass中的Important方法,你会怎么做呢?首先,你可能说:我用不到!如果这样的话,到这里你就可以return了。做法一:最常规有效的做法,使用IDE的全目录全文搜索方法名。当然这样是最有效快速的。但是如果有很多别的类中也定义了Important方法,你就会得
2006-08-04 13:29:00 3589
原创 正则表达式
正则表达式是与语言无关的一种表达式语言,好像是在JDK 1.4及其后续版本中才新增的功能。String类的split方法就是按照一个正则表达式参数对字符串进行切割和匹配,返回切割后的字符串数组。这个功能是不是新增的记不清了,我n久以前在知道有正则表达式这回事之前就用JDK1.4了。其实正则表达式就是匹配,学过sql语句中模糊查询语法的人对之都不会陌生。以上内容是我自己写的,正确性请读者自己把握^_
2006-08-04 11:58:00 1252
原创 nio简介
nio简介 nio的Socket编程中改变最大的是服务器端,客户端可以没有什么变化。目的是增加服务器吞吐量和并行处理客户端请求的能力,改变服务器端阻塞的模型。其设计上采用了Observer模式,使用事件触发机制进行io并行处理。 ByteBuffer:封装了一个byte[],作为数据载体。 ServerSocketChannel:服务器套接字通道通过其工厂方法ServerSock
2006-08-04 11:49:00 1405
原创 java集合框架接口宏观结构:
java集合框架接口宏观结构: java集合框架是一个设计优美的集合框架,为java编程提供了很大的帮助,并且附有高效的实现.使得模块之间可以使用接口进行交互,从而使得程序有很大的扩展性.java集合框架是包含在java标准库里面的,任何支持java的地方都支持.一些需要注意的小问题: List接口的subList方法是一个列表视图,也就是说所有对sublist的操作都会
2006-08-04 11:48:00 1278
原创 swing编程的一些需要注意的事情
swing是非线程安全的,也就是说,如果多个线程同时对一个swing组件进行操作,很可能会引发异常等问题,以至程序崩溃。毕竟,repaint是一个比较花费时间的操作,如果一个swing组件在repaint的过程中,其内容被更改,就会导致repaint的内容与修改后的内容不符,可能导致访问错误(比如多线程环境下修改一个List的item项)。使用Swing的时候,有几个需要注意的地方。首先,当一
2006-07-31 10:34:00 1517
转载 Tomcat 配置集锦
Tomcat 服务器server.xml的关键参数配置说明:以下文字均以tomcat5.0.30为例进行。1,配置tomcat服务器访问端口,只需配置Connector的port端口即可。Tomcat默认为8080,现修改port参数值为80。maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false
2006-07-28 11:04:00 1442 1
原创 类加载器的收获
类加载器的收获最近读了很多关于ClassLoader的文章,收获不少。在这里赶紧总结回顾一下,吸收吸收。首先,关于ClassLoader的一些基本的概念我就不再详细说了。如果连系统中不仅有一个ClassLoader,ClassLoader的作用,ClassLoader是有层次结构,为什么要有自定义类加载器,这些问题都还不明白,那么下文读起来肯定很吃力。 ClassLoader这
2006-07-26 15:50:00 1496
转载 Get a load of that name! (很不错的文章!)
Get a load of that name! Subtle differences in various ways you can dynamically load a class Summary-->-->By Vladimir Roubtsov Printer-friendly version | Mail this to a friend
2006-07-25 17:27:00 1288
转载 Find a way out of the ClassLoader maze (2)
Find a way out of the ClassLoader maze System, current, context? Which ClassLoader should you use? Summary-->--> Printer-friendly version | Mail this to a friendPage 2 of 2
2006-07-25 16:23:00 1140
转载 Find a way out of the ClassLoader maze (1)
Find a way out of the ClassLoader maze System, current, context? Which ClassLoader should you use? Summary-->-->By Vladimir Roubtsov Printer-friendly version | Mail this to a friendPage
2006-07-25 16:05:00 1038
转载 Inside Class Loaders
by Andreas Schaefer11/12/2003This series of articles started when I wanted to write a weblog about the impact of class loaders in a J2EE server. But the log entry grew, due the fact that a few basic
2006-07-21 16:23:00 1243
转载 Java类加载内幕
Java类加载内幕 作者: ∣来源:it专家java技术∣原文地址∣2005-10-19 类加载是java语言提供的最强大的机制之一。尽管类加载并不是讨论的热点话题,但所有的编程人员都应该了解其工作机制,明白如何做才能让其满足我们的需要。这能有效节省我们的编码时间,从不断调试ClassNotFoundException, ClassCastException的工作中解脱出来。 这
2006-07-21 13:16:00 971
转载 克服类加载器混乱
ClassLoader解决方案只需要投入一次成本,它提供了一个解决类版本冲突的方法 最近,我不断听到同事和熟人抱怨J2EE应用服务器中出现的软件版本冲突。这个基础问题由来已久,但是,随着应用程序与应用服务器之间共享的Java库日益增多,这个问题似乎也越来越严重。当应用服务器使用一个Java包的A版本,而位于这台服务器上的应用程序却使用这个包的B版本时,如果这两个版本不兼容,那么就会产生版本冲
2006-07-21 10:15:00 965
转载 HTTP 1.1状态代码以及它们对应的状态信息和含义
下表显示了常见的HTTP 1.1状态代码以及它们对应的状态信息和含义。 应当谨慎地使用那些只有HTTP 1.1支持的状态代码,因为许多浏览器还只能够支持HTTP 1.0。如果你使用了HTTP 1.1特有的状态代码,最好能够检查一下请求的HTTP版本号。 状态代码 状态信息
2006-07-18 14:06:00 1020
原创 使用Java中的final变量需要注意的地方。
对与java中的final变量,java编译器是进行了优化的。每个使用了final类型变量的地方都不会通过连接而进行访问。比如说Test类中使用了Data类中一个final的int数字fNumber=77,这时候,java编译器会将77这个常数编译到Test类的指令码或者常量池中。这样,每次Test类用到fNumber的时候,不会通过引用连接到Data类中进行读取,而是直接使用自己保存在类文件中的
2006-07-17 11:34:00 1606 4
原创 java语言语法细节(自用)
修饰符(访问范围大小顺序) public 完全公开 protected 同一package或者子类中 无同一package private 本class 抽象class不能同时被static修饰符修饰 interface里面方法默认为public abstract修饰 变量默认为public static final修饰 abstract和final,abstract和stat
2006-07-14 13:30:00 1232
转载 Fedora Core 3安装与配置全攻略
Fedora Core 3安装与配置全攻略zt作者:Jeff Wang 安装FC3和Windows2003双系统成功!简要把安装步骤讲一下。 一、安装Fedora Core 3 用Costom模式安装,最好选上所有的Development包;系统语言选择英语就可以了,中文语言包其实用不上,因为如果系统语言用中文,那么菜单什么的还是比较难看,所以系统语言用英语是最好的,这样将来让系统
2006-07-13 13:59:00 1131
原创 Eclipse插件安装
使用Eclipse绝对少不了安装插件。插件安装主要分三种方式,下面一一列出。第一种方式,Web安装:下载插件压缩包,打开Eclipse,Help->Software Update->Find And Install->search for new features to install->New Archined site,选择下载下来的插件压缩包,如果这个压缩包支持这种安装方式,就可以安
2006-07-10 14:04:00 1121
转载 Java,误解为何如此之深
前几天被电话面试,问Java的参数传递方式,我说只有一种方式,就是by value啊,对方纠正我说,基本类型传值,对象类型传引用;呜呼,当时被噎了一
2006-07-07 12:18:00 1093
原创 java多线程中的wait与notify
wait与notify是java同步机制中重要的组成部分。结合与synchronized关键字使用,可以建立很多优秀的同步模型。 synchronized(this){}等价与public synchronized void method(){.....} 同步分为类级别和对象级别,分别对应着类锁和对象锁。类锁是每个类只有一个,如果static的方法被synchronized关键字
2006-07-07 12:01:00 2830
原创 我昨天写一个图像跟踪的Web Application的过程
昨天闲着无聊,2点左右开始犯困,想起来得有个把星期没写程序了,写点程序提提神吧^_^。 随便想想,就写个图像跟踪吧,把一
2006-07-07 11:46:00 1325
原创 程序之美。
程序的美要从两个方面进行品味,一是程序整体的架构之美;一是程序的代码实现之美。编码之美:编程就是为解决一个计算机能够解决的问题写出具体的程序实现。开始,人们总是从发现代码之美开
2006-07-07 11:43:00 2712
转载 【转】外连接&全连接的区别
惭愧啊………………学了这么久的数据库和sql语句,竟然没弄明白外连接和全连接的区别。引用文章一篇,文章说的很清楚。计算机就是这样,不多读书就是不行,有些东西不是自己能能想出来的
2006-07-07 11:39:00 1606
原创 HashSet的contains方法
关于HashSet的发现: 1:HashSet是一个Set,也就是所谓的集合。集合的概念是元素在集合中无序、唯一。无序对于计算机来说没有什么意义,因为
2006-07-07 11:32:00 15654
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人