《Java程序设计之网络编程》 教学课件 重庆大学计算机学院 lizhx@126.com.

Slides:



Advertisements
Similar presentations
LOGO 第 9 章 Java Servlet 和 JSP 编程 孙焘. 重点: servlet 编程原理 1 servlet 的基础类与编程实现 2 JSP 编程原理 3 JSP 的常用语法 4.
Advertisements

软件编程基础 一、程序的编辑 Java 源程序是以 Java 为后缀的简单的文本文件,可以用各种 Java 集成开发环境中的源代码编辑器来编写,也可以用其他文 本编辑工具,如 Windows 中的记事本或 DOS 中的 EDIT 软件等。 利用文字编辑器编写下列程序 public class Hello.
Java 大学实用教程 ( 第 3 版 ) 主讲:程继洪 第 1 章 Java 语言概述  本章导读 Java 语言的诞生Java 语言的诞生 学习 Java 的必要性 学习 Java 的必要性 Java 的特点及与 C/C++ 之关系Java 的特点及与 C/C++ 之关系.
第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行.
1 Java 语言程序设计 计算机系 鲍金玲. 2 引子 甲骨文 甲骨文是全球最大的信息管理软件及服务供应商,成立于 1977 年,公司总部 设在美国加利福尼亚州的红木城( Redwood Shores ),全球员工达 名, 包括 名开发人员、 7500 多名技术支持人员和.
Java 程序分类 Java Application :是完整程序,需要独立的解 释器解释运行;以 “.java” 为后缀的文件,以 main() 方法作为程序入口,由 java 编译器编译生 成字节码,由 Java 解释器加载执行字节码。 Java Applet 没有 main() 方法作为程序入口,是嵌在.
第一章 Java 程序设计技术 概述  什么是 Java 语言  一个简单的 Java 程序  程序的编译和运行  常见错误  使用 Java 核心 API 文档.
程序设计语言基础 软件工程系 秦晓燕. 课程目标 了解面向对象程序设计的思想,以及软件 开发流程。 学习 Java 语言的基本概念和编程方法,基 本掌握 Java 类库的使用。 能够利用所学的方法开发简单的小型应用 程序.
Java 程序设计 案例教程 北京大学出版社 第 01 章. Java 程序设计案例教程 第 01 章 Java 语言与面向对象程序设计 Java 语言的历史 Java 语言的特点 Java 程序的分类 Java 环境配置 Eclipse 的安装 Java 程序的调试 教学目标.
JAVA 概述 主讲:张雷. J2ME API 地址: 广东科贸信息工程 张雷学习要求 了解各种程序设计语言及其特点 了解各种程序设计语言及其特点 了解 JAVA 的发展史和其特点 了解 JAVA 的发展史和其特点.
Java 程序设计(第二版) 普通高等教育 “ 十一五 ” 国家级规划教材 辛运帷等 编著 徐小平 主讲.
淮海工学院 计算机课程 第 1 章 Java 入门 1.1 Java 的起源与发展 1.2 Java 程序开发与运行环境 1.3 Java 程序设计步骤 1.4 Java 程序的构成 一个小游戏.
3.2 Java的类 Java 类库的概念 语言规则——程序的书写规范 Java语言 类库——已有的有特定功能的Java程序模块
动态Web开发技术--JSP.
第1章 Java语言概述.
《 Java开发环境配置》 主讲人:耿力.
Java 2实用教程(第3版)教学课件 主讲教师:张国平
1.2 Java程序开发与运行环境 Java程序文件类型 根据计算结构的不同,Java程序可以划分为:
第八章:网络应用制作技术 本章介绍网络各种应用中所涉及的基本概念和制作技术,包括HTML、网页的制作、Java、Java Script语言的初步基础,VRML语言的基本功能,以及网络环境下分布式数据库系统和客户服务体系的构造方法及技术。
Java程序设计教程 第一讲 Java概述.
Java的程式架構與基本觀念 Java語言的歷史 Java程式的開發環境 Java程式的架構 輸出與輸入物件之使用 工具使用方法介紹
Hello小程序的运行和编译 Java AppletJava小程序的构成 1、关键字
JAVA程序设计.
面向对象程序设计(Java) 徐志红
北京科技大学天津学院 信息工程系 面 向 对 象 程 序 设 计 第1讲 Java初探 主讲:于静.
计算机学院计算机科学与技术系 中德联合软件技术研究所 李波
第二章 JAVA语言基础.
第二部分 Java语言基础篇 第4章 Java语言与面向对象 (之一).
第1章 java简介及环境搭建 第1章 Java简介及开发环境搭建.
年中国软件技术 应用现状和趋势分析 IT168 调研中心调研总监 卢军 2007年1月20日.
Microsoft .NET 第4組 十月15, 2002 B 陳東傑 B 蔣佳勳
程式設計實作.
2.1 基本資料型別 2.2 變數 2.3 運算式與運算子 2.4 輸出與輸入資料 2.5 資料型別轉換 2.6 實例
JDK的安裝.
2018/11/20 第一章 Java概述 武汉大学计算机学院计算机应用系 2018/11/20 14:33.
武汉大学国际软件学院 面向对象程序设计 武汉大学国际软件学院
第3章 語法入門 第一個Java程式 文字模式下與程式互動 資料、運算 流程控制.
第一章: Java Web 开发技术概述.
第一章 電腦、程式與JAVA.
程式設計實作.
第四章 基本輸出入 Java應用程式的輸出入介面有三種,分別是命令提示字元視窗、AWT元件、及Swing元件。本單元先介紹命令提示字元視窗,AWT請看第16、17章,Swing請看第20章。 輸入 輸出.
基于 C# 的 .NET Framework 程序设计
CH09 套件 物件導向程式設計(II).
第一章 認識Java Java 程式設計入門(I).
2018/12/7 Java语言程序设计 教师:段鹏飞.
Java语言程序设计 第八部分 Applet小程序.
Java基础入门 第1章 Java开发入门 · Java语言的特点 · Java开发环境的搭建 · 环境变量的配置 · Java的运行机制.
臺北市立大學 資訊科學系(含碩士班) 賴阿福 CS TEAM
第4章 商务逻辑层及其技术.
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
2019/1/17 Java语言程序设计-程序流程 教师:段鹏飞.
第一章 Java语言概述.
二:JAVA开发环境的安装和配置.
認識 Java.
C/C++/Java 哪些值不是头等程序对象
第 1 章 Java 簡介.
两种不同类别的软件: 功能预定义软件;用户驱动的软件。他们对软件工程方法有不同的需求
01.Java语言概述 讲师:复凡.
第1章 Java语言概述 学习目标 本章要点 上机练习 习 题.
面向对象 程序设计语言基础 马骏
《JAVA程序设计》 语音答疑 辅导老师:高旻.
第二章Java基本程序设计.
開發Java程式語言的工具 JDK.
Java程式初體驗大綱 大綱 在學程式之前及本書常用名詞解釋 Hello Java!程式 在Dos下編譯、執行程式
龍老師我不會Debug QQ.
第6章 面向对象的高级特征 学习目标 本章要点 上机练习 习 题.
Applet.
只要功夫深 铁杵磨成针 —— 写在前面的话.
第二章 Java基础语法 北京传智播客教育
年中国软件技术 应用现状和趋势分析.
Presentation transcript:

《Java程序设计之网络编程》 教学课件 重庆大学计算机学院 lizhx@126.com

第1章 Java语言概述

主要内容: 1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境 1.3 Java程序举例 1.4 其他集成运行环境

1.1 Java语言的产生及其特点 1.1.1 Java语言发展简史 1.1.2 Java虚拟机 1.1.5 Java与C/C++语言的异同

1.1.1 Java语言发展简史 1991年,当初Sun公司的 James Gosling开展了一个名为“Green”的项目,主要目的是开拓消费类电子产品市场,OAK语言 ,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器. 1993 年交互式电视和 PDA 市场开始滑坡,而 Internet 正处于增长时期,因此Sun 公司将目标市场转向 Internet 应用程序。 1995年5月23,Sun World大会,正式发表 1995年Sun 公司的 HotJava 浏览器问世 1996年 发布了1.0 1997年2月,Java的开发包Java v1.1发布 1998年12月,Sun公司发布了Java2平台。 2003年发布了 J2sdk 1.4 2004年,发布J2sdk 1.5

James Gosling介绍 Sun的Java语言开发小组成立于1991年,其目的是开拓消费类电子产品市场,例如,交互式电视、烤面包箱等。Sun内部人员把这个项目称为Green,那时WorldWideWeb还在图纸上呢。该小组的领导人是JamesGosling,是一位非常杰出的程序员。他出生于1957年,于1984年加盟SunMicrosystem公司,之前在一家IBM研究机构工作。他是SunNeWs窗口系统的总设计师。也是第一个用C实现的EMACS的文本编辑器COSMACS的开发者。在研究开发过程中,Gosling深刻体会到消费类电子产品和工作站产品在开发哲学上的差异:消费类电子产品要求可靠性高、费用低、标准化、使用简单,用户并不关心CPU的型号,也不欣赏专用昂贵的RISC处理器,他们需要建立在一个标准基础之上,具有一系列可选的方案,从8086到80586都可以选取。

James Gosling介绍

James Gosling介绍

PatrickNaughton介绍 Patrick Naughton也是Sun公司的技术骨干,曾经是OpenWindows项目的负责人。当Naughton加入该小组后,整个工作进展神速。经过17个月的奋战,整个系统胜利完成。它是由一个操作系统、一种语言(Java)、一个用户界面、一个新的硬件平台、三块专用芯片构成的。通常情况下,这样的项目在Sun公司要75个人干三年。项目完成后,在Sun公司内部做了一次展示和鉴定,观众的反应是:在各方面都采用了崭新的、非常大胆的技术。

1.1.2 Java虚拟机 Java虚拟机(Java Virtual Machine, JVM)是软件模拟的计算机,可以在任何处理器上(无论是在计算机中还是在其它电子设备中)安全并且兼容的执行保存在.class文件中的字节码。Java程序的跨平台特性主要是指字节码文件可以在任何具有Java虚拟机环境的计算机或者电子设备上运行。Java虚拟机中的Java解释器(java.exe)负责将字节码文件解释成为特定的机器码并执行。但是,Java虚拟机的建立需要针对不同的软硬件平台做专门的实现,既要考虑处理器的型号,也要考虑操作系统的种类。目前在SPARC结构、X86结构、MIPS和PPC等嵌入式处理芯片上,在UNIX、Linux、Windows和部分实时操作系统上都实现了Java虚拟机。

1.1.3 Java是不断扩展的计算平台 企业计算: Java 2 Enterprise Edition (J2EE) 桌面计算: Java 2 Standard Edition (J2SE) 嵌入计算: Java 2 Micro Edition (J2ME) 为了满足不同应用领域的需求,Java提供了许多API(Application Programming Interface),这些API分成以下三大类。 Java Core API:由Sun制定的基本API,任何Java平台都必须提供。 Java Standard EXtension API(javax):由Sun制定的扩充API,Java平台可以选择性地提供或加装。 厂商或组织所提供的API:由各家公司或组织所提供。

1.1.3 Java是不断扩展的计算平台

1.1.4 Java语言的特点 Java语言还具有简单、面向对象、分布式、健壮、安全、结构中立、可移植、多线程、动态等特点。 1)简单 Java的风格类似于C、C++ , Java提供了丰富的类库 , Java虚拟机很小 2) 面向对象 把数据和对该数据的操作都封装在一个类中 3)分布式 Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库 4)健壮 Java致力于检查程序在编译和运行时的错误。

1.1.4 Java语言的特点 5)安全 指针和释放内存等原C++功能被删除,避免了非法内存操作, Java虚拟机采用"沙箱"运行模式 6) 结构中立 Java源程序被编译成一种高层次的与机器无关的bytecode格式语言(伪代码),这种语言被设计在虚拟机上运行,由机器相关的解释器实现执行 7)可移植 同体系结构无关的特性使得Java应用程序可以在配备了Java解释器和运行环境的任何计算机系统上运行,这成为Java应用软件便于移植的良好基础。

1.1.4 Java语言的特点 8)多线程 Java提供的多线程功能使得在一个程序里可同时执行多个小任务 9) 动态 Java的动态特性是其面向对象设计方法的发展。它允许程序动态地装入运行过程中所需要类,这是利用C++语言进行面向对象程序设计所无法实现的

1.1.5 Java与C/C++语言的异同 Java语言是一种功能强大语言,但几乎没有一点含混的特征。C++安全性不好,但C和C++还是被大家所接受,所以Java使用了类似于C/C++的语法,而去除了C/C++中许多不合理的内容,以实现其简单、健壮、安全等特性。下面列出几点主要的区别: 1) 全局变量 2) 指针 3) 内存管理 4) 类型转换 5) 结构和联合 6) 预处理

第1章 Java语言概述 1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境 1.3 Java程序举例 1.4 其他集成运行环境

1.2 Java运行环境与开发环境 1.2.1 Java运行环境 1.2.2 Java SDK开发环境 1.2.3 JDK开发环境工具简单介绍

1.2.1 Java运行环境 如果只想运行别人的Java 程序可以只安装Java 运行环境(Java Runtime Environment,JRE),JRE 由Java 虚拟机、Java 的核心类、以及一些支持文件组成。可以登陆Sun公司的网站http://java.sun.com/j2se免费下载Java 的JRE,例如可以根据提示下载支持Microsoft Windows操作系统的JRE文件jre-1_5_0_04-windows-i586-p.exe。安装时可以选择了默认的安装路径,也可以更改路径.

1.2.1 Java运行环境

1.2.2 Java SDK开发环境 1. 安装Java Development Kit(JDK) Sun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。本书将使用JDK目前最新的版本JDK5.0版(也就是J2SE5.0)。可以通过IE或Netscape浏览器浏览网址:http://java.sun.com/j2se,根据提示可以下载支持Microsoft Windows操作系统的jdk-1_5_0-windows-i586.exe到本地硬盘。 安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到D:\jdk1.5.0目录下,如图1-2。正确安装后,在JDK目录下有bin、demo、lib、jre等子目录,如图1-3,其中bin目录保存了javac、java、appletviewer等命令文件,demo目录保存了许多java的例子,lib目录保存了Java的类库文件,jre目录保存的是Java的运行时环境(JRE)。

1.2.2 Java SDK开发环境

1.2.2 Java SDK开发环境

1.2.2 Java SDK开发环境 2. 环境变量的设置 设置环境变量的目的是为了能够正常使用所安装的JDK开发包。通常,我们需要设置三个环境变量:JAVA_HOME、PATH 和 CLASSPATH。     1)、 JAVA_HOME 该环境变量的值就是 Java 所在的目录,一些 Java 版的软件和一些 Java 的工具需要用到该变量,设置 PATH 和 CLASSPATH 的时候,也可以使用该变量以方便设置。   2)、 PATH 该环境变量指定一个路径列表,用于搜索可执行文件的。执行一个可执行文件时,如果该文件不能在当前路径下找到,则依次寻找 PATH 中的每一个路径,直至找到。或者找完 PATH 中的路径也不能找到,则报错。Java 的编译命令 (javac),执行命令 (java) 和一些工具命令 (javadoc, jdb 等) 都在其安装路径下的 bin 目录中。

1.2.2 Java SDK开发环境 3)、 CLASSPATH 该环境变量也指定一个路径列表,是用于搜索 Java 编译或者运行时需要用到的类。在 CLASSPATH 列表中除了可以包含路径外,还可以包含 .jar 文件。Java 查找类时会把这个 .jar 文件当作一个目录来进行查找。通常,我们需要把 JDK 安装路径下的 jre\lib\rt.jar 包含在 CLASSPATH 中。

1.2.2 Java SDK开发环境 设置环境变量有三种方法: 1)修改系统自动批处理文件

1.2.2 Java SDK开发环境 2) 在系统特性中设置PATH和CLASSPATH。 对于Window2000/NT/XP操作系统,用鼠标右键点击”我的电脑”,弹出菜单,然后选择属性,弹出”系统特性”对话框,再单击该对话框中的高级选项,然后点击按钮”环境变量”,添加如下的系统环境变量 变量名: JAVA_HOME 变量值: d:\jdk1.5.0 (其内容应根据JDK安装目录变化) 变量名: PATH 变量值: d:\jdk1.5.0\bin;%path% (其内容应根据JDK安装目录变化) 变量名: CLASSPATH 变量值: .; d:\jdk1.5.0\jre\lib\rt.jar;(其内容应根据实际情况变化)

1.2.2 Java SDK开发环境

1.2.2 Java SDK开发环境 3) 在MS-DOS命令行窗口设置 也可以在MS-DOS命令行键入下列命令后,回车确认,例如 set JAVA_HOME=d:\jdk1.5.0; set PATH=d:\jdk1.5.0\bin;%PATH%; set CLASSPATH = .;d:\jdk1.5.0\jre\lib\rt.jar; 注意,这种方式设置的环境变量只对本DOS窗口有效。

1.2.2 Java SDK开发环境 3、安装Java帮助文档 由于JDK的安装程序中并不包含帮助文档,因此必须从Sun的网站上下载进行安装。可以通过IE或Netscape浏览器浏览网址:http://java.sun.com/j2se,根据提示可以下载jdk-1_5_0-doc.zip到本地硬盘。通常安装在JDK所在目录的docs子目录下面。用浏览器打开docs子目录下的index.html文件就可以阅读到该帮助文档的首页

1.2.2 Java SDK开发环境

1.2.2 Java SDK开发环境

1.2.2 Java SDK开发环境

1.2.3 JDK开发环境工具简单介绍

第1章 Java语言概述 1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境 1.3 Java程序举例 1.4 其他集成运行环境

Java程序分成三类: Application(应用程序) Applet(小程序) Servlet(服务器端小程序) 应用程序在计算机中单独运行,而小程序只能嵌在HTML网页中运行。这需要一些网页知识。Servlet是运行在服务器端的小程序,它可以处理客户传来的请求(request),然后传给客户端(response)。本节的例子将采用notepad作为程序的编辑器,然后在JDK5.0平台下运行。

1.3 Java程序举例 Java程序分成三类: Application(应用程序) Applet(小程序) Servlet(服务器端小程序) 应用程序在计算机中单独运行,而小程序只能嵌在HTML网页中运行。这需要一些网页知识。Servlet是运行在服务器端的小程序,它可以处理客户传来的请求(request),然后传给客户端(response)。本节的例子将采用notepad作为程序的编辑器,然后在JDK5.0平台下运行。

【例1-1】要求在命令行窗口显示“Hello Wolrd!”。 1.3.1 简单的Java应用程序 下面我们先介绍简单的Java程序,并对其进行分析。 【例1-1】要求在命令行窗口显示“Hello Wolrd!”。 我们将该文件命名为HelloWorldApp.java,其源程序如下: // HelloWorldApp.java public class HelloWorldApp //一个应用程序 { public static void main(String args[]) System.out.println(″Hello World!″); }

1.3.1 简单的Java应用程序 Java解释器在没有生成任何实例的情况下,以main()作为入口来执行程序。Java程序中可以定义多个类,每个类中可以定义多个方法,但是最多只有有一个公共类,main()方法也只能有一个,作为程序的入口。在main()方法定义中,括号()中的String args[]是传递给main()方法的参数,参数名为args,它是类String的一个实例,参数可以为0个或多个,多个参数间用逗号分隔。 在main()方法的实现(大括号内) 中,只有一条语句:   System.out.println(″Hello World!″); 它用来实现字符串的输出,这条语句实现与C语言中的printf语句和C++中cout<<语句相同的功能。另外,//后的内容为注释

1.3.1 简单的Java应用程序 在程序中,首先用保留字class来声明一个新的类,其类名为HelloWorldApp,它是一个公共类(用public修饰)。整个类定义由大括号{ }括起来。在该类中定义了一个main()方法,其中public表示访问权限,指明所有的类都可以使用这一方法;static指明该方法是一个类方法,它可以通过类名直接调用;void则指明main()方法不返回任何值。对于一个应用程序来说,main()方法是必需的,而且必须按照如上的格式来定义。

1.3.1 简单的Java应用程序

1.3.1 简单的Java应用程序 该文件保存在d:\user\chap01目录下。然后对它进行编译:   d:\user\chap01>javac HelloWorldApp.java 编译的结果是生成字节码文件HelloWorldApp.class。最后用java解释器来运行该字节码文件:   d:\user\chap01>java HelloWorldApp   结果在命令行窗口屏幕上显示HelloWorld!

【例1-2】程序SimpleInput.java完成从命令行输入简单的双精度。该程序演示如何使用引用包以及如何在命令窗口输入数据。

1.3.1 简单的Java应用程序 import java.io.*; //引入该程序需要的类所在的包 public class SimpleInput{ public static void main(String args[]) throws IOException{ String s; BufferedReader ir=new BufferedReader( new InputStreamReader(System.in)); s=ir.readLine(); System.out.println("Input value is:"+s); double d=Double.parseDouble(s); //将s 转换成double型 System.out.println("Input value changed after doubled:"+Math.sqrt(d)); }

1.3.1 简单的Java应用程序 在JDK5.0中提供了java.util. Scanner类,可以直接从输入流读取简单数据。例如 import java.util.Scanner; public class TestScanner { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int a = cin.nextInt(), b = cin.nextInt(); System.out.println(a + b); System.out.printf(""+ Math.PI); System.out.format("%4d%4d",a,b); System.out.format("Pi is approximately %f", Math.PI); }

1.3.1 简单的Java应用程序 输入: 123 456 输出: 579 3.141592653589793 123 456Pi is approximately 3.141593Finished executing

1.3.1 简单的Java应用程序 printf()和 format() 方法具有相同的功能. System.out 是 java.io.PrintStream的实例. PrintStream, java.io.PrintWriter, 和 java.lang.String 每个类都有四个新的格式化方法: format( String format, Object... args); printf( String format, Object... args); format( Locale locale, String format, Object... args); printf( Locale locale, String format, Object... args);

1.3.1 简单的Java应用程序 %[argument_index$][flags][width][.precision]conversion 其中: argument_index是一个正整数,说明了参数的位置,1为取第一个参数 width表示输出的最小字母个数 precision代表数字的小数位数 conversion代表被格式化的参数的类型: f float, t time d decimal o octal x hexadecimal s general c a Unicode character

【例1-3】从m个数中抽出n个数,试计算中奖的概率。该例演示如何从可视化组件输入数据并转换成整形数据,然后从命令窗口输出数据。 1.3.1 简单的Java应用程序 【例1-3】从m个数中抽出n个数,试计算中奖的概率。该例演示如何从可视化组件输入数据并转换成整形数据,然后从命令窗口输出数据。 // Proba.java

1.3.1 简单的Java应用程序 // Proba.java import javax.swing.*; public class Proba{ public static void main(String[] args){ String input= JOptionPane.showInputDialog("你希望抽取多少个数?"); int k=Integer.parseInt(input); input=JOptionPane.showInputDialog(“一共有多少个数? "); int n=Integer.parseInt(input); int result=1; for(int i=1;i<=k;i++){ result=result*(n-i+1)/i; } System.out.println("你中奖的几率是1/"+result+""); System.exit(0);

【例1-4】 1.3.2 简单的Applet小程序 下面的例子将演示Applet在网页中的应用。 该程序的目的是在浏览器中显示“Hello World in Applet!” // HelloWorldApplet.java import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet{ //一个小程序 public void paint(Graphics g){ g.drawString(“Hello World in Applet!”,20,20); }

1.3.2 简单的Applet小程序 import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet{ //一个小程序 public void paint(Graphics g){ g.drawString(“Hello World in Applet!”,20,20); } 这是一个简单的Applet(小应用程序)。程序中,首先用import语句输入java.awt和java.applet下所有的包,使得该程序可能使用这些包中所定义的类,它类似于C中的#include语句。然后声明一个公共类HelloWorldApplet,用extends指明它是Applet的子类。在类中,我们重写父类Applet的paint()方法,其中参数g为Graphics类,它表明当前作画的上下文。在paint()方法中,调用g的方法drawString(),在坐标(20,20)处输出字符串“Hello World in Applet!”,其中坐标是用象素点来表示的。

1.3.2 简单的Applet小程序 import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet{ //一个小程序 public void paint(Graphics g){ g.drawString(“Hello World in Applet!”,20,20); } 这个程序中没有实现main()方法,这是Applet小程序与应用程序Application运行机制的主要区别之一。为了运行该程序,首先我们也要把它放在文件HelloWorldApplet.java中,然后对它进行编译:   d:\user\chap01>javac HelloWorldApplet.java   得到字节码文件HelloWorldApplet.class。

1.3.2 简单的Applet小程序 由于Applet中没有main()方法作为Java解释器的入口,我们必须编写HTML文件,把该Applet嵌入其中,然后用appletviewer来运行,或在支持Java的浏览器上运行,如IE。 ExampleApplet.html文件如下: <HTML> <HEAD> <TITLE>An Applet</TITLE> </HEAD> <BODY> <applet code=”HelloWorldApplet.class” width=200 height=40> </applet> </BODY> </HTML>

1.3.2 简单的Applet小程序 其中用<applet>标记来启动HelloWorldApplet.code指明字节码所在的文件,width和height指明applet所占的大小,我们把这个HTML文件存入ExampleApplet.html,然后使用appletviewer工具来运行该网页,如下:   d:\user\chap01>appletviewer ExampleApplet.html   这时屏幕上弹出一个窗口,其中显示Hello World in Applet!

1.3.3 Servlet Java Servlet和Java Applet正好是相对应的两种程序类型。Applet运行在客户端,在浏览器内执行,而Servlet在服务器内部运行,通过客户端提交的请求启动运行,并将结果还回给客户端或调用它的程序。 进一步学习,请参考本书的第17章相关内容。

1.4 其他集成运行环境 现在常用的Java项目开发环境有:Eclipse 、JBuilder、Sun Java Studio、IntelliJ IDEA、Java Workshop、NetBeans IDE、Gel+J2SDK、JCreator +J2SDK、JDK+记事本、EditPlus+J2SDK等等。上节中的例子就是采用的“JDK+记事本”的环境。针对不同的软件系统规模和不同的应用领域,可以采用适合自己开发的工具。下面将介绍三款流行的开发工具。

1.4 其他集成运行环境 1、GEL GEL为用户提供了相当强大的功能,例如项目管理功能,项目模板功能,可个性化设置语法高亮属性、行数、类浏览器、标签文档、多功能编绎器,向导功能以及完全可自定义的用户界面。 GEL小巧,同时很好的支持汉字。与JDK完美无逢集成。缺点是只能进行简单的程序开发,不能进行企业J2EE的开发应用。非常适合初学者学习使用Java。 其下载地址为http://www.gexperts.com/download.html。目前最新版本为 Gel version 1.0 RC39, 4.3MB。其开发界面如图

1.4 其他集成运行环境

1.4 其他集成运行环境 2. Eclipse Eclipse是一种可扩展的免费开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。   Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。目前Eclipse联盟已推出其Eclipse3.1版软件,这是一款非常受欢迎的Java开发工具,这国内的用户越来越多,实际上用它开发Java的人员是最多的。用户可从http://www.eclipse.org下载最新版本。其开发界面如图1-15。

1.4 其他集成运行环境

1.4 其他集成运行环境 3.JBuilder JBuilder是一款大型的Java集成开发环境,它能满足很多方面的应用,尤其是对于服务器和EJB开发。下面简单介绍一下JBuilder的特点: JBuilder支持最新的Java技术,包括Applet、JSP/Servlets、JavaBean以及EJB(Enterprise JavaBeans)的应用。 用户可以自动地生成基于后端数据库表的EJB Java类,JBuilder同时还简化了EJB的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言,Interface Definition Language)和控制远程对象。 JBuilder 加速了企业JavaBeans,WEB服务器,XML,移动产品和数据库应用开发,双向可视化设计工具和迅速调用J2EE应用服务器,这些应用服务器包括BEA® WebLogic,® IBM® WebSphere,® Sybase® EAServer, JBoss,® 和 integrated Borland® Enterprise Server。拥有创新强大的JavaServer™ Faces, Struts, 和 Web服务设计工具,支持JDK™ 5.0 (J2SE 5.0), UML代码可视化,分布式因子分解,代码审核,企业单位测试,支持多语控制系统。

1.4 其他集成运行环境 JBuilder能用Servlet和JSP开发和调试动态Web 应用。 利用JBuilder可创建(没有专有代码和标记)纯Java2应用。由于JBuilder是用纯Java语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。 JBuilder拥有专业化的图形调试界面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。 JBuilder环境开发软件很方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,内存开销大,这时运行速度显得较慢。其开发界面如图1-16。

1.4 其他集成运行环境