Vous êtes sur la page 1sur 35

Java 简介

Java 是什么
 Java 技术是由美国 Sun 公司倡导和推出的,它包

 Java 语言和各类开发平台及工具
 Java Media APIs
 Security APIs
 Management APIs
 Java Applet
 Java RMI
 JavaBean
 JavaOS
 Java Servlet
 Java Server Pages
 JDBC 等
Java 的历史
 Java 来自于 Sun 公司的一个叫 Green 的项目,
其原先的目的是为家用消费电子产品开发一个分
布式代码系统,这样我们可以把 E-mail 发给电
冰箱 、电视机等家用电器,对它们进行控制,和
它们进行信息交流 。
 开始准备采用 C++ ,但 C++ 太复杂,安全性
差,最后基于 C++ 开发一种新的语言 Oak(Java
的前身)。
 Oak 是一种用于网络的精巧而安全的语言, Sun
公司曾依此投标一个交互式电视项目,但结果被
SGI 打败。
 于是 Oak 几乎无家可归,面临下马……
Java 的历史
 时来运转,天赐良机, Internet 时代来临…

 正当这个小组快要被 SUN 裁撤时,全世界第
一个全球资讯网浏览器 --Mosaic 诞生了
 Mark Ardreesen 开发的 Mosaic 和 Netscape
启发了 Oak 项目组成员,
 他们用 Java 编制了 HotJava 浏览器,
 得到了 Sun 公司首席执行官 Scott McNealy 的
支持,触发了 Java 进军 Internet
Java 之父 - James Gosling
Java 的大事记
 1990 年, Sun 公司 JamesGosling 领导的小组
设计了一种平台独立的语言 Oak. 主要用于为各
种家用电器编写程序
 1995 年 1 月, Oak 被改名为 Java
 1995 年 5 月 23 日, Sun 公司在 Sun
World‘95 上正式发布 Java 和 Hotjava 浏览器。
 1995 年 8 月至 12 月, Netscape 公司、 Oracle
公司、 Borland 公司、 SGI 公司、 Adobe 公司、
IBM 公司 、 AT&T 公司、 Intel 公司获得 Java
许可证。 Sun 公司宣布允许苹果电脑 、 HP 、日
立、 IBM, Microsoft, Novell, SGI. SCO.
Tamdem 等公司将 Java 平台嵌入到其操作系统
中。
Java 的大事记
 1996 年 5 月, HP 公司 Sybase 公司获得 Java
许可证。北方电讯公司宣布把 Java 技术和 Java
微处理器应用到其下一代电话机中的计划 。
 5 月 29 日, Sun 公司在旧金山举行第一届
JavaOne 世界 Java 开发者大会,业界人士踊跃
参加。 Sun 公司在大会上推出一系列 Java 平台
新技术。
 1996 年 8 月, Java WorkShop 成为 Sun 公司通
过互联网提供的第一个产品。
 1996 年 9 月, Addison-Wesley 和 Sun 公司推出
Java 虚拟机规范和 Java 类库。
Java 的大事记
 1996 年 10 月,德州仪器等公司获得 Java 许可证。 Sun
公司提前完成 JavaBean 规范并发布,同时发布第一个
Java JIT(Just-In-Time )编译器,并打算在 Java
WorkShop 和 Solaris 操作系统中加人 JIT 。
 10 月 29 日, Sun 公司发布 Java 企业计算技术,包括
JavaStation 网络计算机、 65 家公司发布的 85 个 Java
产品及应用、 7 个新的 Java 培训课程及 Java 咨询服务
、基于 Java 的 Solstice 互联网邮件软件、新的 Java
开发者支持服务 、 Hodava Views 演示 、 Java Tutor,
Java Card API 等。
 Sun 公司宣布完成 Java Card API 规范,这是智能卡使用
的第一个开放 API. Java Card 规范将把 Java 能力赋予
全世界亿万张智能卡。
Java 的大事记
 1996 年 11 月, IBM 公司获得 JavaOS 和
HotJava 许可证。 Novell 公司获得 Java
WorkShop 许可证。 Sun 公司和 IBM 公司宣布
双方就提供 Java 化的商业解决方案达成一项广
泛协议 ,IBM 公司同意建立第一个 Java 检验中
心。
 1996 年 12 月, Xerox 等公司获得 Java 或
JavaOS 许可证 。 Sun 公司发布 JDK
1.1 、 Java 商贸工具包 、 JavaBean 开发包及一
系列 Java APIs ;推出一个新的 JavaServer 产
品系列,其中包括 Java Web Server, Java NC
Server 和 JavaServer Toolkit ,Sun 公司发布
100 %纯 Java 计划,得到百家公司的支持。
Java 的大事记
 1997 年 1 月, SAS 等公司获得 Java 许可证。
Sun 公司交付完善的 JavaBean 开发包,这是在
确定其规范后不到 8 个月内完成的。
 1997 年 2 月, Sun 公司和 ARM 公司宣布同意使
JavaOS 运行在 ARM 公司的 RISC 处理器架构
上。 Informix 公司宣布在其 Universal Server 和
其他数据库产品上支持 JDK 1.1 , Netscape 公司
宣布其 Netscape Communicator 支持所有
Java 化的应用软件和核心 APIs.
Java 的大事记
 1997 年 3 月, HP 公司获得 Java WorkShop 许可证,用
于其 HP-UX 操作系统。西门子 AG 公司等获得 Java 许
可证 。日立半导体公司、 Informix 公司等获得 JavaOS
许可证 。 Novell 公司获得 Java Studio 许可证。 Sun 公
司发售 JavaOS 1.0 操作系统,这是一种在微处理器上运
行 Java 环境的最小、最快的方法,可提供给 JavaOS
许可证持有者使用 ) Sun 公司发售 HotJava Browser
1.0 ,这是一种 Java 浏览器,可以方便地按需编制专用
的信息应用软件,如客户自助台和打上公司牌号的网络应
用软件
 1999 年 6 月、 Sun 公司发布 JSP 1.0 ,同时推出 JDK
1.3 和 Java Web Server 2.0 0
Java 的大事记
 1999 年 11 月, Sun 公司发布 JSP 1.1 ,
同时推出 JSWDK 1.0.1 和 Java Servlet 2.2
0
 2000 年 9 月, Sun 公司发布 JSP 1.2 和
Java Servlet 2.3 API.
 ……
 2006 年 ,Sun 公司发布 jdk 6.0 版本并宣布
java 也开放源码 ,7.0 也正式进入研发。
Java 语言的特点
 Java 是一种简单的
、面象对象的、分布式
、解释型的、健壮 、安全、具有跨平台能
力、可移植的、高性能的 、多线程、动态
的程序设计语言
Java 语言的特点 -- 简单
 Java 最初是为对家用电器进行集成控制而
设计的一种语言,因此它必须简单明了。
Java 语言的简单性主要体现在以下 3 个方
面 :
 Java 的风格类似于 C++ ,从某种意义上讲,
Java 语言是 C 及 C++ 语言的一个变种,
 C++ 程序员可以很快掌握 Java 编程技术。

 Java 摒弃了 C++ 中容易引发程序错误的地方


,如指针和内存管理。
 Java 提供了丰富的类库( class library )。
Java 语言的特点 -- 面向对象
 Java 最重要的特性 。
 Java 语言的设计完全是面向对象的,它不
支持类似 C 语言那样的面向过程的程序设
计技术。
 Java 支持代码继承
支持代码 及重用。
Java 语言的特点 -- 分布式
 Java 包括支持 HTTP 和 FTP 等基于
TCP/IP 协议的程序库。
 Java 应用程序可凭借 URL 打开并访问网
络上的对象
 访问方式与访问本地文件系统几乎完全相
同。
Java 语言的特点 -- 健壮
 Java 致力于检查程序在编译和运行时的错
误 。
 类型检查可帮助程序员检查出许多开发早
期出现的错误。
 Java 自已操纵内存,减少了内存出错的可
能性 。
Java 语言的特点 -- 结构中立
 Java 能够将它的程序编译成一种结构中立
的中间文件格式,只要有 Java 运行系统
的机器都能执行这种中间代码。
 Java 源程序可被编译成一种高层次的、与
机器无关的 bytecode( 字节码 ) 格式语言,
这种语言被设计在虚拟机上运行,由机器
相关的运行调试器实现执行 。
Java 语言的特点 -- 安全
在 Java 语言里,像指针和申请、释放内
存等 C++ 功能被删除,避免了非法内存操
作 。
 而在装载类时,类装载器通过将本机类与
网络资源类的名称分开来保持安全性。
Java 语言的特点—可移植
 同体系结构无关的特性使得 Java 应用程
序可以在配备了 Java 解释器和运行环境
的任何计算机系统上运行
 为 Java 应用软件的移植奠定了良好基础

Java 语言的特点 -- 解释运行
 Java 解释器能直接运行目标代码指令。
 链接程序通常比编译程序所需资源少
Java 语言的特点 -- 高性能
 如果解释器速度不慢, Java 可以在运行时
直接将目标代码翻译成机器指令。 Sun 的
直接解释器 1 秒钟内可调用 300,000 个过
程。翻译目标代码的速度与 C/C++ 的性能
没什么区别。
 别信广告,看实效!
Java 语言的特点 -- 多线程
 Java 的多线程功能使得在一个程序里可同
时执行多个小任务。
 如网上音频视频播放 ,边下载边播放
下载 JDK 搭建 Java 平台
 Java 平台由 Java 应
用编程接口( API )
和 Java 虚拟机
( JVM )构成,如图 Java 程序

所示。这个平台构成
了 Java 在不同计算机 Java APIs
系统中编译和运行的 Java 平台
环境。 (安装 JDK )
Java 虚拟机
 为了搭建 Java 平台,
需要下载和安装 Java
软件开发工具箱 计算机系统
( Java Development
Kit , JDK ),并设置
Java 编译和运行环境。
http://java.sun.com/javase/downloads/index.jsp
下载内容
 JDK 6 (Java SE Development Kit )
includes
 theJava Runtime Environment (JRE)
 command-line development tools that are
useful for developing applets and
applications.
Java 程序的编写、编译和运行
 使用命令行
工具
 Java 代码可 这是我们保存的源代码文件
C:/MyJava/HelloWorld.java

以使用记事
本做编辑器 编译 HelloWorld 程序

TextPad 运行 HelloWorld 程序

 或使用集成 这是编译后得到的字节码文
件: HelloWorld.class

开发环境
NetBeans
IDE
Java 的集成开发环境( IDE )
 包括:菜单、工具栏、组件面板、窗体设
计器、代码浏览器、代码编辑器、项目管
理器、对象观察器等,
 可以完成 Java 程序的编写、编译和运行
优秀 Java 开发工具介绍
 JBuilder 环境开发程序方便,它是纯的 Java 开发环境
,适合 J2EE 开发。其缺点是过于庞大,不宜上手,
新手难于把握整个程序各部分之间的关系;对机器的
硬件要求较高,比较吃内存,运行速度显得较慢。
 Eclipse 是一个开放源代码的、基于 Java 的可扩展开
对象浏览器
工具栏

发平台。就其本身而言,它只是一个框架和一组服务
菜单
,用于通过插件组件构建开发环境。 Eclipse 附带了 透视图
工具栏

一个 Java 开发工具( JDT )插件,是全功能的 Java


包资源管理器

IDE 。它允许用户编辑、编译和运行 Java 程序。 大纲

 NetBeans IDE 4 是 Sun 公司最新发布的,也是支持


项目管理器
代码编辑器

新的 J2SE 平台 5.0 版的第一个 IDE 。 Sun 公司将该


代码编辑器

软件和 J2SE 5 打包在一起,两者可以一并下载和安


装,十分方便。 它可以完成程序设计、资源重用、代
各种观察窗口 代码辅助功能

码编译、调试测试等一系列任务。 是本教材首选
Java IDE 。
开始我们的 java 之旅吧!
 Java 程序由一个或多个独立的类组成,但
 其中必须有一个公有类,
 而且源代码文件( .java 文件)必须与这个
公有类的名字相同。
Java 程序的基本框架结构
 Java 程序由一个或多个独立的类组成,但其中必
须有一个公有类(如: HelloWorld ),而且源代
码文件必须与这个公有类的名字相同(如:
HelloWorld.java )。
 Java 的类可以由一个或多个方法组成,其中公有
类中的 main 方法可用作程序运行的入口。 程序头的注释
HelloWorld 类

方法头
// The First Java Program
public class HelloWorld {
public static void main(String[] args){
方法体 System.out.println("Hello World ! ");
参数
}
}

修饰符 返回类型
方法名
main 方法
Java 程序的编辑、编译和运行过程

Java 程序编译通过 编辑程序代码 javac 生成出错信息

,会自动生成一个包
含了这个源程序字节
HelloWorld.java

码的同名 .class 文 编译程序代码 有编译错

件。该文件可以通过 javac HelloWorld.java 误吗?


Yes

Java 虚拟机运行。
No

HelloWorld.class

解释执行字节码
java HelloWorld
标识符和关键字
 在 Java 语言中,标识符用于表示变量、常量、方法、类
或接口的名称。标识符是大小写敏感的,但没有长度限制

 Java 关键字是为编译器保留的、具有特定含义的标识符,
不能把它用做变量、类或方法的名称。
 Java 语言中的保留字
abstract default if private throw
boolean do implements protected throws
break double import public transient
byte else instanceof return try
case extends int short void
catch final interface static volatile
char finally long super while
class float native switch
const for new synchronized
continue goto package this
撰写规范的程序代码
// 程序说明
package 包的名称
程序代码质量评审原则:
import 类的名称
类修饰符 class 类的名称
 正确性 构造方法 指程序代码要实现软件设计所要求的功能;
类成员:方法 (按照以下访问特性次序排列)
 可靠性 public 指程序代码最后编译的程序要能够稳定、可靠、
protected
安全的运行; private protected
private
 规范化 类成员:域 指程序代码书写的风格、命名规则等要符合规范
(按照以下访问特性次序排列)
; public
protected
 可读性 private 指程序代码要便于查看和理解;
protected
private
 静态变量(即使用 static 修饰符的。按照以下访问特性次序排列)
灵活性 指程序代码的设计和编写应该易于维护和改动。
public
protected
private protected
private
常量 (即使用 static final 修饰符的)
黄蓉的题目,你来答
《射雕英雄传》中,黄蓉遇上神算子瑛姑,给她出的三道题目中有一
题是这样的:今有物不知其数,三三数之剩二,五五数之剩三,七七
数之剩二,问物几何?也就是说,有一个未知数,这个数除以三余二
,除以五余三,除以七余二,问这个数是多少?

示例程序 “黄蓉的题目” Calc.java


public class Calc{
public static void main(String[] args) {
int x;
for (x=0;x<100;x++) {
if ((x%3==2) && (x%5==3) && (x%7==2)) {
System.out.println(" 这个数字是: "+x);
}
}
}//end of main
}//end of Calc

Vous aimerez peut-être aussi