package org.lxh.demo ;
import java.io.* ;
import java.util.* ;
interface Fruit
{
// 生长
public void grow() ;
// 采摘
public void pick() ;
}
class Apple implements Fruit
{
public void grow()
{
System.out.println("苹果在生长。。。 ") ;
&nbs ...
环境变量C:\jdk1.5.0_04 JDK安装路径
JAVA_HOME C:\jdk1.5.0_04
编辑系统变量
变量明: Path
变量值: C:\jdk1.5.0_04\bin
在编译Servlet时,有时会出现找不到servlet包的问题,真是因为servlet为jdk的扩展包,所以在使用时需要指定classpath,具体方法 -- set classpath=%Tomcat%\common\lib\servlet.jar
如果不指定classpath,可以采用如下方法:
--将C:\Tomcat 5. ...
本章包含了一系列项目,它们都以本书介绍的内容为基础,并对早期的章节进行了一定程度的扩充。
与以前经历过的项目相比,这儿的大多数项目都明显要复杂得多,它们充分演示了新技术以及类库的运用。
17.1 文字处理
如果您有C或C++的经验,那么最开始可能会对Java控制文本的能力感到怀疑。事实上,我们最害怕的就是速度特别慢,这可能妨碍我们创造能力的发挥。然而,Java对应的工具(特别是String类)具有很强的功能,就象本节的例子展示的那样(而且性能也有一定程度的提升)。
正如大家即将看到的那样,建立这些例子的目的都是为了解决本书编制过程中遇到的一些问题。但是,它们的能力并非仅止于此。通过 ...
本附录包含了大量有用的建议,帮助大家进行低级程序设计,并提供了代码编写的一般性指导:
(1) 类名首字母应该大写。字段、方法以及对象(句柄)的首字母应小写。对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。例如:
ThisIsAClassName
thisIsMethodOrFieldName
若在定义中出现了常数初始化字符,则大写static final基本类型标识符中的所有字母。这样便可标志出它们属于编译期的常数。
Java包(Package)属于一种特殊情况:它们全都是小写字母,即便中间的单词亦是如此。对于域名扩展名称,如com,org,net或者 ...
附录A 使用非JAVA代码
JAVA语言及其标准API(应用程序编程接口)应付应用程序的编写已绰绰有余。但在某些情况下,还是必须使用非JAVA编码。例如,我们有时要访问操作系统的专用特性,与特殊的硬件设备打交道,重复使用现有的非Java接口,或者要使用“对时间敏感”的代码段,等等。与非Java代码的沟通要求获得编译器和“虚拟机”的专门支持,并需附加的工具将Java代码映射成非Java代码(也有一个简单方法:在第15章的“一个Web应用”小节中,有个例子解释了如何利用标准输入输出同非Java代码连接)。目前,不同的开发 ...
附录B 对比C++和Java
“作为一名C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且Java的语法无疑是非常熟悉的。事实上,Java本来就是从C++衍生出来的。”
然而,C++和Java之间仍存在一些显著的差异。可以这样说,这些差异代表着技术的极大进步。一旦我们弄清楚了这些差异,就会理解为什么说Java是一种优秀的程序设计语言。本附录将引导大家认识用于区分Java和C++的一些重要特征。
(1) 最大的障碍在于速度:解释过的Java要比C的执行速度慢上约20倍。无论什么都不能阻止Java语言进行编译。写作本书的时候,刚刚出现了一些准实时编译 ...
Tomcat下建立虚拟目录
例: 建立目录 d:\testWeb 在其中建立一个WEB-INF文件夹 然后:从Tomcat目录中\webapps\ROOT\WEB-INF 复制web.xml到d:\testWeb\WEB-INF 删除 与之间的内容 最后:配置Tomcat目录下\conf\server.xml文件 , 在最后上添加 重启Tomcat服务器,便可通过http://loca ...
钻进去几天,虽然网上找过问题的答案,但到现在看到Marty Hall , Larry Brown的 Core Servlets and JavaServer Pages中第十章开始处的Overview of JSP Technology后才接了我一头的疑惑,两者到底啥关系^_^ . 当然,也许几天前看到这章可能现在会是另一篇介绍性的文章让我豁然开朗--- 原文如下
java 代码
"-//W3C//DTD HTML 4.0 Transitional//EN"&g ...
java 代码
package Lesson10;
import java.net.*;
import java.io.*;
public class Lesson10 {
public static ...
java 代码
/*
AWT(Abstract Window Toolkit),抽象窗口工具包,SUN公司提供的用于
图形界面编程(GUI)的类库。基本的AWT库处理用户界面元素的方法是把这些元素
的创建和行为委托给每个目标平台上(Windows、Unix、Macintosh等)的本地
GUI工具进行处理。例如:如果我们使用AWT在一个Java窗口中放置一个按钮,那
么实际上使用的是一个具有本地外观和感觉的按钮。这样,从 ...
对象序列化
将对象转换为字节流保存起来,并在日后还原这个对象,这种机制叫做对象序列化。
将一个对象保存到永久存储设备上称为持续性。
一个对象要想能够实现序列化,必须实现Serializable接口或Externalizable接口。
当一个对象被序列化时,只保存对象的非静态成员变量,不能保存任何的成员方法和静态的成员变量。
如果一个对象的成员变量是一个对象,那么这个对象的数据成员也会被保存。
如果一个可序列化的对象包含对某个不可序列化的对象的引用,那么整个序列化操作将会失败,并且会抛出一个NotSerializableException。我们可以将这个引用标记为transient, ...
java 代码
/*RandomAccessFile
此类的实例支持对随机存取文件的读取和写入。随机存取文件的行为类似存储在
文件系统中的一个大型字节数组。存在指向该隐含数组的光标或索引,称为文件指针;
输入操作从文件指针开始读取字节,并随着对字节的读取而前移此文件指针。
如果随机存取文件以读取/写入模式创建,则输出操作也可用;输出操作从文件指
针开始写入字节,并随着对字节的写入而前移此文件指针。写入隐含数组的当前末
尾之后的输出 ...
流(Stream)是字节的源或目的。
两种基本的流是:输入流(Input Stream)和输出流(Output Stream)。可从中读出一系列字节的对象称为输入流。而能向其中写入一系列字节的对象称为输出流。
FileInputStream和FileOutputStream
节点流,用于从文件中读取或往文件中写入字节流。如果在构造FileOutputStream时,文件已经存在,则覆盖这个文件。
BufferedInputStream和BufferedOutputStream
过滤流,需要使用已经存在的节 ...
ArrayList和LinkedList的比较
ArrayList底层采用数组完成,而LinkedList则是以一般的双向链表(double-linked list)完成,其内每个对象除了数据本身外,还有两个 引用,分别指向前一个元素和后一个元素。
如果我们经常在List的开始处增加元素,或者在List中进行插入和删除操作,我们应该使用LinkedList,否则的话,使用ArrayList将更加快速。
java 代码
//LinkedList实现堆栈
import java.util.*;   ...
程序是计算机指令的集合,它以文件的形式存储在磁盘上。
进程:是一个程序在其自身的地址空间中的一次执行活动。
进程是资源申请、调度和独立运行的单位,因此,它使用系统中的运行资源;而程序不能申请系统资源,不能被系统调度,也不能作为独立运行的单位,因此,它不占用系统的运行资源。
线程:是进程中的一个单一的连续控制流程。一个进程可以拥有多个线程。
线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其它线程共享一个存储空间,这使得线程间的通信远较进程简单。
实现多线程程序的两种方式:
...
java 代码
/*java迭代器Iterator
* 1)使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的
* next()方法,它返回序列的第一个元素。
* 2)使用next()方法获得序列的下一个元素。
* 3)使用hasNext()方法检查序列中是否还有元素
* 4)使用remove()将迭代 ...
本文档从Eclipse软件上整理,是列出了标准的快捷键,未列出Emacs快捷键。
<如果忘记如下快捷键,可以使用Eclipse3.1中查看快捷键的使用方式:>CTRL+SHIFT+L
编辑
作用域 功能 快捷键
全局 查找并替换 Ctrl+F
文本编辑器 查找上一个 Ctrl+Shift+K
文本编辑器 查找下一个 Ctrl+K
全局 撤销 Ctrl+Z
全局 复制 Ctrl+C
全局 恢复上一个选择 Alt+Shift+↓
全局 剪切 Ctrl+X
全局 快速修正 Ctrl1+1
全局 内容辅助 Alt+/
全 ...
java 代码
//*孙鑫教程笔记。接口中run()方法与基类中的run()方法重名。
//通过内部类实现接口避免重名冲突冲突
interface Machine {
void run();
}
class Person {
void run() { &n ...
java 代码
//: notes about thinking in java
//c07:Sandwich.java
// Order of constructor calls.
// From 'Thinking in Java, 3rd ed.' (c) Bruce&n ...
在eclipse + MyEclipse+tomcat下配置建立J2EE工程
环境需要:
1.JDK1.5.0.6;//我用的 jdk-1_5_0_04-windows-i586-p.exe
2.eclipse3.1.2_SDK; //我用的eclipse-SDK-3.2.2-win32.zip
3.MyEclips4.1.1; //我用的MyEclipse 5.1.1 GA
4.apache-tomcat-5.5.16;//我用的 jakarta-tomcat-5.0.28.exe
5.tomcat插件 tomcatPlugin ...
OSGi规范介绍
第一章 引言
OSGi(Open Service Gateway Initiative)最初的目的就是为各种嵌入式设备提供通用的软件运行平台,即可以屏蔽设备操作系统与硬件区别的中间件平台。PC基本上被 Wintel架构垄断,运行在PC上的应用程序完全可以在另一台PC上运行;但对于其他设备来说就不同,它们的硬件平台可能完全不同,其操作系统也是来自不同厂商,所以任何设备上的应用程序都需要定制,于是就产生了对中间件平台的需求。
OSGi并不是专为家庭网络而制定的,除了住宅网关,像车载电脑等其他移动嵌入式设备也都可以通过OSGi接入Internet,获取不同的应用服务 ...







评论排行榜