slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Java 技术与应用 PowerPoint Presentation
Download Presentation
Java 技术与应用

Loading in 2 Seconds...

play fullscreen
1 / 39

Java 技术与应用 - PowerPoint PPT Presentation


  • 240 Views
  • Uploaded on

Java 技术与应用. - 走进 Java 世界. 西安交大 卫颜俊 2008 年 11 月 电子信箱: Mr.Java@163.com QQ: 610568018 网站 : 202.117.58.97/java. 对 Java 的评价. 美国的著名杂志 PC Magzine 将 Java 评为 1995 年十大优秀科技产品 。 WWW 的创始人 Bcrners-lee 说: “ 计算机事业发展的下一个浪潮就是 Java ,并且很快会发生 ”。 工业界指出 “ Java 是二十世纪际八十年代以来计算机界的一件大事 " 。

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Java 技术与应用' - yetty


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Java技术与应用

-走进Java世界

西安交大 卫颜俊 2008年11月

电子信箱:Mr.Java@163.com

QQ: 610568018

网站: 202.117.58.97/java

slide2
对Java的评价
  • 美国的著名杂志PC Magzine将Java评为1995年十大优秀科技产品。
  • WWW的创始人Bcrners-lee说:“计算机事业发展的下一个浪潮就是Java,并且很快会发生”。
  • 工业界指出 “Java是二十世纪际八十年代以来计算机界的一件大事 " 。
  • Microsoft CEO Bill Gates语录:“Java语言是长时间以来最卓越的程序设计语言”。
  • 工业界预言: “ Java将是网络上的世界语,Java语言的出现将会引起一场软件革命” 。
  • 权威专家说: “Java甚至会改变此星球的生活方式 ”。
  • 本人预测: “其它计算机语言不久将会纷纷让位于Java” 。
slide3
对Java的评价

美国国家标准科学研究所

IBM公司

斯坦福大学

麻省理工大学

英国爱丁堡大学

日本国家高级工业科学与技术研究所等诸多国际权威机构和几十篇权威证据

纷纷证明:

Java比C++开发效率更快和运行性能更好。

slide4
本讲主要内容
  • Java发展简史
  • Java核心机制
  • Java语言的特点
  • JDK常用Java命令和Notepad工具的使用方法
  • Java标识符
  • Java程序演示
slide5
Java语言的发展简史

 全世界存在3000多种计算机程序设计语言。

 目前流行的如下:

 汇编、C/C++言、Java、Fortran、Pascal、PHP和HTML。

slide6
1991年,美国Sun公司“绿色项目”,目的是开拓掌上电脑、交互式电视和烤面包箱等消费品电子技术市场。由于C/C++语言无法适应高可靠、低费用、标准化和操作简单等消费类电子产品的特殊要求,同年6月开始准备开发一种新型语言,后改名为Java。1991年,美国Sun公司“绿色项目”,目的是开拓掌上电脑、交互式电视和烤面包箱等消费品电子技术市场。由于C/C++语言无法适应高可靠、低费用、标准化和操作简单等消费类电子产品的特殊要求,同年6月开始准备开发一种新型语言,后改名为Java。
  • 1994年,Sun公司推出HotJava浏览器专门支持Java Applet小程序的运行。
  • 1996年初Sun公司正式发布Java 1.0版,Java的第一个开发工具包JDK1.0也随即发布,标志着一种新的计算机语言-Java从此诞生。
  • 1998年12月8日,Java第二版发布。
  • 1999年6月,Sun公司相继发布了Java的三个版本:

  标准版(J2SE)、企业版(J2EE)和微型版(J2ME) 。

  • 目前Sun公司又推出JDK6 。
slide7
*7产品是基于新型SPARC体系结构的手持无线PDA, 它能够控制广泛的娱乐平台和家用电器。

包含以下几部分:

  • 一个 5“彩色 LCD(触摸屏)
  • 新型的16位 --5:6:5 彩色硬件双缓冲NTSC 制式的帧缓冲器
  • 900MHz 无线网
  • PCMCIA 总线接口
  • 多媒体和电池电源支持
  • 内含<1MB的Unix
  • 一种新型的小编程语言
  • TV远程控制器
  • …...
slide8
J2SE

为基本的Java 2 SDK,并提供工具、运行机制和供开发者编写、交付和使用Applet和Application的API。

Java 2 SDK, Standard Edition, v 1.6.0

Java 2 Runtime Environment, Standard Edition, v 1.6.0

Java Plug-in

JavaBeans Development Kit (BDK)

Java HotSpot Server Virtual Machine

slide9
APIs

Collections Framework

Java Foundation Classes (JFC)

Swing Components

Pluggable Look & Feel

Accessibility

Drag and Drop

Security

Java IDL

JDBC

JavaBeans

Remote Method Invocation (RMI)

Java 2D

slide10
J2EE

在一个体系中组合了许多技术,提供广泛的应用编程模型和兼容性测试套件,以便建立企业级的服务器端应用。

Enterprise JavaBeans体系

JavaServer Pages

Java Servlet

Java Naming and Directory Interface (JNDI)

Java IDL

JDBC

Java Message Service (JMS)

Java Transaction (JTA)

Java Transaction Service (JTS)

JavaMail

RMI-IIOP

slide11
J2ME

高度优化的Java运行环境,面向广泛的消费产品,包括传呼机、蜂窝电话、视频电话、数字机顶盒和汽车导航系统。

Java 2 Platform, Micro Edition (J2ME technology)

Connected Limited Device Configuration (CLDC)

K Virtual Machine (KVM)

PersonalJava Application Environment

PersonalJava Technology, Source Edition

EmbeddedJava Application Environment

EmbeddedJava Technology, Source Edition

Java Card

JavaPhone API

Java TV API

Jini Connection Technology

Mobile Information Device Profile (MIDP

slide13
Java核心机制

Java程序的运行必须经过编写、编译和解释运行三个步骤:

slide14
Java核心机制
  • 编写是指在某种Java开发环境中进行程序代码输入,最终保存为“.java”后缀形式的源代码文件。
  • 编译是指使用Java编译器对源代码文件进行语法错误排查,生成“.class” 后缀形式的二进制字节码格式文件。
  • 解释运行是指使用Java解释器将字节码翻译成硬件机器代码,并交由CPU执行并显示结果。
slide15
Java核心机制中的几个概念
  • 字节码(ByteCode)

是一种和任何具体机器及操作系统体系结构都无关的中间代码,以二进制格式的指令形式出现。

  • 虚拟机(JVM)

Java系统中专门设计了一个中间机制,即虚拟机,字节码必须首先经过虚拟机上的运行时环境(JRE)使用及时编译(JIT)或Hotspot机制解释成硬件机器的指令并交由CPU执行,虚拟机起到了一种字节码解释器的作用,同时具有字节码装载和安全校验的功能。

slide16
Java核心机制
  • 虚拟机机制

Java虚拟机是一个假想机,在实际的计算机上通过软件模拟实现的虚拟计算机。Java虚拟机有自己想象中的硬件,包括处理器、堆栈、寄存器,以及相应的指令系统。

虚拟机的内部结构由类装载器子系统、执行引擎和运行时数据区等三部分组成。

slide17
虚拟机的内部结构

(1) 类装载器。用于装载字节码文件,包括启动类装载器和用户自定义类装载器两种。其中,启动类装载器是虚拟机实现的一部分,用户自定义类装载器则是Java程序的一部分。

(2) 执行引擎。包括执行字节码和执行本地方法两个方面。

(3) 运行时数据区。包括指令集、方法区、堆、栈、PC寄存器和本地方法栈等部分。

slide18
Java核心机制
  • 垃圾回收机制

垃圾回收机制是虚拟机中的主要机制之一,目的是释放那些不再使用的对象所占用的内存,并将这些对象清除。它首先判断对象是否被活动对象引用,以确定是否应该回收该对象,然后使用引用计数和对象引用遍历等两种方法来进行回收。

垃圾回收机制包括标记清除收集器、标记压缩收集器、复制收集器、增量收集器、叠代收集器、并发收集器和并行收集器等。

slide19
Java核心机制
  • 安全模型

安全模型是Java应用于网络环境的关键技术。为了防止用户系统受到网络不安全程序的破坏,Java提供了沙箱机制,可以在沙箱内安全运行Java程序,来自于Internet上的Applet,其行为仅限制于“沙箱”之内,不允许读写沙箱之外的任何数据,并禁止对硬盘进行直接读写、和别的主机(不包括程序所在的主机)进行网络连接、创建新进程和载入新的动态库并直接调用本地方法等一些不安全行为。

slide20
“沙箱”安全模型组成部分

(1) 内建于Java虚拟机和语言的安全特性。

(2) 类的载入结构。

(3) 类文件校验器。

(4) 安全管理器和Java应用程序设计接口(API)。

java java

Java程序

JVM

API

Java平台

硬件平台(CPU)

Java、Java程序与平台
slide22
Java的特点

Java是什么? Java的特点是什么?

Java语言白皮书这样回答:

A simple,object-oriented, distributed, interpreted, robust, secure, architecture-neutral, portable,

high-performance, multi-threaded, dynamic

language.

简单、面向对象、分布式、解释执行、鲁棒、安全、体系结构中立、可移植、高性能、多线程以及动态性。

java appl ication
Java Application的特点

Application是一种典型的客户/服务器(C/S)计算模式的Java程序,它与C/C++语言编写的带有主函数(main)的程序类似,可以具有任意规模大小,本机上的任何系统文件、数据库和网络等资源都可以不受限制地使用。它完全采用面向对象程序设计方法,能够充分发挥Java语言的诸多优点,既可以是控制台(DOS)式的字符界面风格,又可以是图形用户界面(GUI)式的风格。

java appl ication1
Java Application的程序结构

【例1-1】编写一个程序,在屏幕上显示一段文字:“欢迎学习Java!”。

1 : package 第一章;

2 :

3 : public class 我的第一个类 {

4 : public static void main(String[] args) {

5 : System.out.println("欢迎学习Java!");

6 : }

7 : }

java applet
Java Applet的特点

普通WWW浏览器只具有下载、解析和运行网页、图片、声音和Flash动画等功能,而Java Applet程序不仅如此,还可以完成客户程序与远程服务器程序之间的动态交互,身在异地就可以完成远程交易、网络电子银行和网上办公等功能。

Applet以程序身份通过特殊标记嵌入在网页,浏览器通过访问该网页,首先下载网页,然后下载Applet字节码程序文件到本地,并交由本地的Java虚拟机解释运行,虚拟机将运行结果定向到浏览器界面。

java applet2
Java Applet的程序结构

1 : //HelloWorldApplet.java

2 : import java.awt.*;

3 : import java.applet.*;

4 : public class HelloWorldApplet extends Applet {

5 : public void paint(Graphics g){

6 : g.drawString("Hello World!",50,50);

7 : }

8 : }

9 :

10: <!-- HelloWorldApplet.html-->

11: <HTML>

12: <BODY>

13: <APPLET CODE="HelloWorldApplet.class" WIDTH=100 HEIGHT=100>

14: </APPLET>

15: </BODY>

16: </HTML>

slide28
JSP的特点

JSP技术主要是为企业建立浏览器/服务器(B/S)计算模式的应用系统而推出的一种动态网页技术(Java Server Pages),它在网页(HTML)和超文本传输协议(HTTP)的语法基础上,融合了许多Java技术、特别是网络技术,给快速建立动态网站提供了强有力的手段。它将Java的片断代码嵌入在网页中,形成动态网页文件,当浏览器访问时,WWW服务器中的Java虚拟机和运行系统将本动态网页创建成Java源代码程序,然后编译并运行起来,最后将结果返回给浏览器。

slide29
JSP的程序结构

1 : <%--helloworldjsp.jsp --%>

2 : <%@page contentType="text/html; charset=GBK" %>

3 : <html>

4 : <body>

5 : <%="Hello world!"%>

6 : </body>

7 : </html>

java c
Java与C++等的比较
  • 学过C++的不用从头学习Java。
  • 对同一个项目进行开发,据估计用Java语言比用C++语言可节省1/2到2/5的时间。
  • Java与C、C++风格相同。
  • 全局变量、Goto、指针、数据类型的支持、类型转换、头文件、结构和联合、预处理
  • Java摒弃了C、C++中的存储管理及与其相关联的Pointer操作,代之以GC(自动存储管理系统)。
  • Java与HTML有区别,Java与CGI、ActiveX、JavaScript、PHP、Perl、Python、JPython亦有区别。
  • Java的兼容性、安全性和客户机零配置方面也较ActiveX强。
slide31
JDK程序结构

package house;//目录

class Computer{…}//文件

import house.*; 或import house. Computer;

class Desk{…}

jdk 1
JDK常用命令(1)

1. javac命令:

功能:将Java源程序文件(.java)编译成字节码文件(.class)

用法:javac <选项> <源文件>

2. java命令:

功能:装载字节码文件(.class)并运行其对应的类

用法:java <选项> <类> [参数值...]

或 java<选项> -jar <打包文件> [参数值...]

3. appletviewer命令:

功能:Applet程序运行察看工具

用法:appletviewer <选项> <网址或网页>

jdk 2
JDK常用命令(2)

4. javadoc命令:

功能:摘取/** */注释行,生成网页格式的Java类说明文档

用法:用法:javadoc [选项] [软件包名称] [源文件] [@file]

5. jdb命令:

功能:调试Java类

用法:jdb <选项> <类> <参数>

slide35
Java标识符语法规定

任何计算机语言程序都需要定义标识符,Java语言也不例外,标识符(identifier)是指对程序中的各个元素加以命名时使用的命名记号。在Java语言中,标识符是以字母、下划线(_)、美元符($)或汉字开始的字符序列,后面可以跟多个字母、下划线、美元符、数字或汉字。Java语言的标识符区分大小写,而且不能包含不可见的空格(Tab、Space、换行或回车),尽量避免以_、$开头,以免与本地方法的一些C库名混淆。另外,Java 标识符不能是Java系统的保留字。

slide36
Java标识符语义约定
  • 文件名:与所包含的类名一致,源程序文件扩展名为“.java”,字节码文件扩展名为“.class”,例如:Hello.java、Hello.class
  • 包名:名词,无特殊要求,例如:myhome,chapter1.section1
  • 类名:名词,每个词首字母大写,例如:Dog、GraduatedStudent
  • 方法名:动词,从第二个词开始首字母大写,其中构造方法与类名相同,例如:getColor、setSalary、run
  • 变量名:名词或形容词,与方法名相同,例如:color,totalScore
  • 常量名:名词或形容词,每个字母均大写,可以使用_或$符号分隔每个单词,例如:MAX_INTEGER、AVERAGE_AGE
slide38
举例

【例1-2】编写程序计算正整数n的阶乘值n!,其中n!=1×2×…×n。

slide39
举例

【例1-6】计算大数n的阶乘值。