- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1,程序设计语言 ,
——高级程序设计语言 高级程序设计语言
FORTRAN(FORmular TRANslation)语言,HPF: IBM,1950 Pascal语言:N.Wirth,1968,(Delphi,Borland) COBOL(COmmon Business Oriented Language)语言: 美国国防部,1960 C和C++语言:Dennis Retchie, 1972; Bjarne Stroustrup,1983, Bell Basic(Beginner's All-purpose Symbolic Instruction Code)语言:美国国防部,1964 Ada语言:军用程序设计语言, 美国国防部, 1983 Java语言: 1991年,SUN MicroSystem公司
3,Java语言特点 , 语言特点
—— (1) 面向对象
Java = " C++ " - " 复杂性和奇异性 " + "安全性和可移植性" 安全性和可移植性" 安全性和可移植性
Java语言是一个完全面向对象的语言,并且对软件工 程技术有很强的支持 Java语言的设计集中于对象及其接口,它提供了简单 的类机制以及动态的接口模型. 对象中封装了它的状态变量以及相应的方法,实现了 模块化和信息隐藏; 类提供了一类对象的原型,并且通过继承机制,子类 可以使用父类所提供的方法,实现了代码的复用.
3,Java语言特点 , 语言特点
—— (4)多线程 多线程
单线程程序一个时刻只能做一件事情,多线程程序允许在 同一时刻同时做多件事情. 其它大多数高级语言,包括C,C++等,都不支持多线程, 只能编写顺序执行的程序(除非有操作系统API的支持). Java提供现成的类Thread,只要继承这个类就可以编写多线 程的程序. 多线程机制使应用程序能够并行执行,而且同步机制保证 了对共享数据的正确操作. 通过使用多线程,程序设计者可以分别用不同的线程完成 特定的行为,而不需要采用全局的事件循环机制,这样就很 容易地实现网络上的实时交互行为.
解 释 过 程
1,程序设计语言 ,
——高级程序设计语言 高级程序设计语言
高级语言写出的程序是独立于任何具体的计算机的. 但是"编译器"和"解释器"则是与机器相关的.同一种 语言,对于不同的机器,需要不同的"编译器"和"解释 器". 人们已经开发出了许多不同的高级程序设计语言,不 同的语言有各自不同的规范,因此需要专门的"编译器" 和"解释器".
\bin目录:Java开发工具,包括Java编译器, 解释器等 \demo目录:一些实例程序 \lib目录:Java开发类库 \jre目录: Java运行环境,包括Java虚拟机, 运行类库等 …
4,Java开发环境 , 开发环境
Java开发工具包括: 开发工具包括: 开发工具包括
Javac:Java编译器,用来将java程序编译成 Bytecode. Java:Java解释器,执行已经转换成Bytecode的 java应用程序. Jdb:Java调试器, 用来调试java程序. Javap:反编译,将类文件还原回方法和变量. Javadoc:文档生成器,创建HTML文件. Appletviwer:Applet解释器, 用来解释已经转换成 Bytecode的java小应用程序.
编译,没有绝对地址 编译 没有绝对地址
调入包含, 调入包含,继承所 用到的所有类, 用到的所有类 内存 分配确定,变成真正 分配确定 变成真正 可执行的机器码 不存在伪造的指针 不违反访问权限 不非法访问对象 不导致操作栈溢出
Java源程序 源程序 (.java文件 文件) 文件 Java编译器 编译器 Java Bytecode (.class文件 文件) 文件
3,Java语言特点 , 语言特点
—— (2)平台无关性 平台无关性
严格的语言定义:没有"依据机器的不同而不 同" 或"由编译器决定"等字眼,最后的目标码 都是一致的. Java解释器生成与体系结构无关的字节码指令, 只要安装了Java运行时系统,Java程序就可在任意 的处理器上运行.这些字节码指令对应于Java虚 拟机中的表示,Java解释器得到字节码后,对它 进行转换,使之能够在不同的平台运行.
4,Java开发环境 , 开发环境
安装JDK 安装
直接运行"j2eesdk-1_4_01-windows.exe", 按照安装向导进行安装. 解开"j2sdk-1_4_2-doc.zip",得到JDK的 开发文档.
4,Java开发环境 , 开发环境
安装JDK后产生如下目录结构: 后产生如下目录结构: 安装 后产生如下目录结构
3,Java语言特点 , 语言特点
—— 其他
(5) 可移植性 (6) 分布性 (7) 高性能(相对于其他解释型语言) (8) 健壮性
3,Java语言特点 , 语言特点
—— (9)与C及C++的区别 与 及 的区别
不再有全局变量 不再有#include 和#define 等预处理功能 不再有structure,union及typedef等 不再有函数,不再有指针,不再有多重继承 不再有goto语句 不再有操作符重载(Operatior Overloading) 取消自动类型转换,要求强制转换 自动进行内存管理
Bytecode 载入器 字节码校验器 Bytecode 解释器
系统执行平台
Java虚拟机 虚拟机
不同的操作系统有不同的虚 拟机. Java Just-in-time 拟机. 它类似一个小巧而高效的CPU. 它类似一个小巧而高效的 . interpreter compiler Bytecode代码是与平台无关的 代码是与平台无关的 是虚拟机的机器指令. 是虚拟机的机器指令. Runtime System Java字节代码运行的两种方式 字节代码运行的两种方式: 字节代码运行的两种方式 Interpreter(解释方式 解释方式) 解释方式 Operating System Just-in-time(即时编译 有代码 即时编译):有代码 即时编译 生成器将字节代码转换成本机 的机器代码, 的机器代码,然后可以以较高 Hardware 速度执行. 速度执行
4,Java开发环境 , 开发环境
C:\
Jdk
当前目录
bin javac java
lib jre demo appletviewer
用户类文件所在目录 c:\java\examples\applications
1,程序设计语言 ,
——高级程序设计语言 高级程序设计语言
编 译 过 程
1,程序设计语言 ,
——高级程序设计语言 高级程序设计语言
对于"解释执行" 方式,人们实现了一种称为"解 释器"(Interpreter)的软件来完成转换工作.解释器在工 作方式上与编译器不同,它不对源程序进行翻译,而是直 接对源程序的语句进行分析和解释,实现源程序所描述的 功能.
1,程序设计语言 ,
——高级程序设计语言 高级程序设计语言
对于"编译执行"方式,人们实现了高级语言"编译器" (Compiler)完成这种转换工作.编译器把高级语言程序看 成是符合一定语法结构的符号串,对它进行加工变换.编译 器对源程序的加工一般分为两个阶段:源程序首先被翻译成 机器语言,这种翻译结果称为"目标码"(object code),目 标码构成的程序片段称为目标模块.第二步,这些目标模块 被与其他一些基本模块(由编译软件提供)连接在一起,最 终形成"可执行程序"(exec算机上实际运行了. 第一个加工步骤称为"编译"(compiling),第二个步 骤称为"连接"(linking).
4,Java开发环境 , 开发环境
JDK
j2eesdk-1_4_01-windows.exe j2sdk-1_4_2_04-nb-3_6-bin-windows.exe j2sdk-1_4_2-doc.zip
集成环境
Jbuilder (Borland) Visual J++ (Microsoft) JPad TextPad …
2,Java历史及发展 , 历史及发展
Java是一种解释型的,面向对象的编程语言.
历史:1991年,SUN MicroSystem公司的Jame Gosling,Bill Joe等人为在电视,控制烤箱等家用消费类电子产品上进行交 互式操作而开发了一个名为Oak的软件. Oak —> Java:互联网给Java带来新的生机 1995年Sun向公众推出Java并引起业界的轰动 发展:面向网络应用,类库不断丰富,性能不断提高,应用 领域不断拓展.(1995年以来) 应用:Java是当今最流行的软件开发语言之一,Sun推出了 Java2 & J2EE使Java具有更广泛的用途,适用于各种应用开发, 尤其是网络应用,网络服务,嵌入式系统等.
编译型和解释型语言的工作模式
Java编译器 编译器 Java解释器 解释器 二进制 编译器
二进制
Powerpc 源 程 序
中 间 码
Powerpc 源 程 序
Powerpc
Powerpc
pentium
pentium
pentium
pentium
SPARC
SPARC
SPARC
SPARC
Java的编译与执行 的编译与执行
4,Java开发环境 , 开发环境
设置环境变量: 设置环境变量: