/**@author卢伟*@version1.02008-03-06**/importjava.awt.Cursor;importjava.awt.Dimension;importjava.awt.Toolkit;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.KeyEvent;importjava.awt.event.Key
系统 2019-08-29 23:41:29 2399
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,将http://192.168.1.110:2046/的URL反向代理为http://www.javapeixun.com.cn/的URL时,用request.getRemoteAddr()方法获取的IP地址是:127.0.0
系统 2019-08-29 22:59:17 2399
假设我们在函数中写了如下这个简单的语句:StringBufferstr=newStringBuffer("Helloworld");别看这个语句简单,其实包含了如下三个步骤:首先,newStringBuffer("Helloworld")在堆里申请了一坨内存,把创建好的StringBuffer对象放进去。其次,StringBufferstr声明了一个指针。这个指针本身是存储在栈上的(因为语句写在函数中),可以用来指向某个StringBuffer类型的对象。
系统 2019-08-29 22:52:29 2399
Java.util.ArrayList(类):importjava.awt.*;importjava.util.*;publicclassCollectionTest{//List是一个能包含重复元素的已排序的Collection,有时list也称为序列,List第一个元素的下标为0publicStringcolors[]={"red","white","blue"};//定义一个字符数组//构造函数publicCollectionTest(){Array
系统 2019-08-29 22:44:14 2399
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,特别是先学c、c++后学java的程序员。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。比如函数参数类型是自定义的类时,此时便是引用传递而不是值传递。以下是一个小例子:1publicclassA{2publicStringname;3}4publicclasstestClone{5publi
系统 2019-08-29 22:02:42 2399
二十三、请不要在新代码中使用原生态类型:先简单介绍一下泛型的概念和声明形式。声明中具有一个或者多个类型参数的类或者接口,就是泛型类或接口,如List,这其中E表示List集合中元素的类型。在Java中,相对于每个泛型类都有一个原生类与之对应,即不带任何实际类型参数的泛型名称,如List的原生类型List。他们之间最为明显的区别在于List包含的元素必须是E(泛型)类型,如List,那么他的元素一定是String,否则将产生
系统 2019-08-29 22:02:38 2399
Jofti【Java开源其它开源项目】Jofti可对在缓存层中(支持EHCache,JBossCache和OSCache)的对象或在支持Map接口的存储结构中的对象进行索引与搜索。这个框架还为对象在索引中的增删改提供透明的功能同样也为搜索提供易于使用的查询功能。Yan【Java开源IOC容器】Yan是一个非侵入式的对象反转控制容器(IOC容器)。它通过宣告式的方式把简单的组件组合起来从而构建出任意复杂的组件。这些简单的组件同样也
系统 2019-08-12 09:29:50 2399
好东西分享大家在去参加面试的时候,经常会遇到这样的考题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和一些变量,构造器里可能还有一段代码对变量值进行了某种运算,另外还有一些将变量值输出到控制台的代码,然后让我们判断输出的结果。这实际上是在考查我们对于继承情况下类的初始化顺序的了解。我们大家都知道,对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)>(变量、初始化块)>构造器。我们也可以通过
系统 2019-08-12 09:29:28 2399
Java中的四种引用强、软、弱和虚引用,对应的生命周期:强>软>弱>虚引用.除强引用外,其他3种引用都需要与ReferenceQueue联合使用,当引用被垃圾回收机制回收的时候,引用会自动放入ReferenceQueue中.WeakReference和SoftReference可以用来做Cashe,文章第二段引用了JavaEye文章,介绍Googlecollection的MapMaker方便生成ConcurrentMap,可以方便的设置map中expire
系统 2019-08-29 23:49:34 2398
版权声明:转载时请务必保留以下作者信息和链接作者:陈维(chenweionline@hotmail.com)作者的网站:http://www.chenwei.mobi我们的Java程序中有时候需要调用程序自身以外的一些程序,来完成某些计算。那么这个时候可以使用ProcessBuilder.start()或Runtime.exec方法,并返回Process子类的一个实例,该实例可用来控制进程并获取相关信息。我用调用Windows系统的计算器举个例子:try.
系统 2019-08-29 23:33:19 2398
开始之前,我想就本文即将讨论的主题和读者需要具备的起点知识做一些必需的描叙。本文的主题是讨论SOAP技术,我们将尽可能的讲得通俗易懂一些,所以,我们引入了一个普通的“HelloWorld”范例来给读者说明它们是怎么运作的,让读者知道它们的运作方式。我认为,如果光看官方文档是很难开始学习这门新技术的,官方文档中包含大量的范例,并解释了所有的特性和优点,但是没解释它们的运作方式。在这篇文章中,我不打算只肤浅的解释SOAP技术的定义,我们假设读者熟悉Java语言
系统 2019-08-29 23:31:45 2398
c.适配器模式我的笔记本是港货,它的插头与我们常用的插座不一样,所有我出差的时候我必须带一个适配器,才能使用不同地方的插座。这是一个对适配器模式最经典的描述。当我们设计的系统要与其它系统交互,或者我们设计的模块要与其它模块交互时,这种交互可能是调用一个接口,或者交换一段数据,接受方常常因发送方对协议的变更而频繁变更。这种变更,可能是接受方来源的变更,比如原来是A系统,现在变成B系统了;也可能是接受方自身的代码变更,如原来的接口现在增加了一个参数。由于发送方
系统 2019-08-29 22:50:56 2398
本文由cnblogs博主Caoer(草儿)原创,此处为转载。原文出处为http://www.cnblogs.com/sarafill/archive/2011/05/18/2049461.html如原创作者认为本文侵权,请通知本博。java.util.concurrent包含许多线程安全、测试良好、高性能的并发构建块。不客气地说,创建java.util.concurrent的目的就是要实现Collection框架对数据结构所执行的并发操作。通过提供一组可靠
系统 2019-08-29 22:16:17 2398
敏捷开发的理念已经流行了很长的时间,在敏捷开发中的开发迭代阶段中,我们可以通过五个步骤,来有效的提高整个项目的代码质量。Java项目开发过程中,由于开发人员的经验、Java代码编写习惯,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维护,需要较大的测试投入和周期等问题。这些问题在一个项目组初建、需求和设计均具有不完全可预期性和完备性的全新项目中将尤为突出。如图1所示,敏捷开发过程经历需求调研,用例分析和用例分解,进入开发迭代阶段。在每个
系统 2019-08-29 21:58:48 2398
一、游戏介绍1、游戏内容简介在很多年以前,红白机FC的超级马里奥兄弟是当时的游戏中的颠峰之作,套用当时最流行的一句话就是操作感和平衡性几乎完美无暇。这里完成的MLDN马里奥参考的就是这款游戏的设定,对游戏的背景、人物、敌人等重新绘制,并加入了一些恶搞的元素。2、游戏操作游戏通过键盘操作,键盘上的箭头“”和”分别控制Mario的移动,空格键控制Mario的跳跃,通过以上的简洁的操作完成整个游戏。3、游戏中的设定开始游戏时,Mario会有3条生命,消灭敌人或顶
系统 2019-08-12 09:30:26 2398