




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章Java 概述,1.1 Java 的诞生 1.2 Java 的特点 1.3 安装SUN公司的JDK 1.4 Java程序开发工具 1.5一个简单的Java应用程序的开发过程 1.6 一个简单的Java小应用程序(Java Applet) 1.7 Java与C+的不同之处 1.8 参考书,1.1 Java 的诞生(续),1991, Sun 成立James Gosling领导的Green小组,开发了Oak语言; 1992.8,Oak与GreenOS、用户接口模块、硬件模块集成为Star Seven,Green升级为First Person子公司; 1994, First Person 解体,
2、Sun决定将Oak与3W相结合; 1995.1,James Gosling 和Naughton 完成Oak新版与第一个基于Oak的应用程序Web Runner; Oak Java WebRunner HotJava,1995年秋 , Netscape Navigator 2.0 32位版中支持Java. 1996年,发布JDK1.0。 1997年,发布JDK1.1。 1998年12月 ,Sun发布发布了JDK1.2(称为Java 2),技术Swing技术。 1999年Java被分为J2SE、J2ME和J2EE,JSP/Servlet技术诞生。 2000年,JDK1.3和JDK1.4发布。 20
3、04年,JDK1.5发布,J2SE1.5更名为J2SE5.0。 2005年,J2SE更名为Java SE, J2ME更名为 Java ME,J2EE更名为Java EE。,1.1 Java 的诞生(续),1.2 Java 的特点,(1)面向对象 (2)平台无关性 (3)多线程 (4)安全 (5)可移植性 (6) 分布性 (7) 高性能 (8) 健壮性,Java语言是一个完全面向对象的语言,并且对软件工程技术有很强的支持; Java语言的设计集中于对象及其接口,它提供了简单的类机制以及动态的接口模型; 对象中封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏; 类提供了一类对象的原型,并且
4、通过继承机制,子类可以使用父类所提供的方法,实现了代码的复用。,(1) 面向对象,严格的语言定义:没有“依据机器的不同而不同” 或“由编译器决定”等字眼,最后的目标码都是一致的。 Java解释器生成与体系结构无关的字节码指令,只要安装了Java运行时系统,Java程序就可在任意的处理器上运行。这些字节码指令对应于Java虚拟机中的表示,Java解释器得到字节码后,对它进行转换,使之能够在不同的平台运行。,(2)平台无关性,源 程 序,字 节 码,Java编译器,SPARC,pentium,Powerpc,Powerpc,pentium,SPARC,二进制,Java解释器,(2)平台无关性-解释
5、型语言的工作模式,编译,没有绝对地址,调入包含、继承所用到的所有类, 内存分配确定,变成真正可执行的机器码,Java源程序,Java编译器,Java 字节码,系统执行平台,字节码解释器,类载入器,字节码校验器,不存在伪造的指针 不违反访问权限 不非法访问对象 不导致操作栈溢出,(2)平台无关性- Java的编译与执行,它类似一个小巧而高效的CPU。 Bytecode代码是与平台无关的 是虚拟机的机器指令。 Java字节代码运行的两种方式: Interpreter(解释方式) Just-in-time(即时编译) 不同的操作系统有不同的虚 拟机。,(2)平台无关性- Java虚拟机,Java虚拟
6、机,单线程程序一个时刻只能做一件事情,多线程程序允许在同一时刻同时做多件事情。 其它大多数高级语言,包括C,C+等,都不支持多线程,只能编写顺序执行的程序(除非有操作系统API的支持)。 Java提供现成的类Thread,只要继承这个类就可以编写多线程的程序。,(3) 多线程,(4)安全性,Java致力于检查程序在编译和运行时的错误,类型检查能够检查出许多开发早期出现的错误。 Java支持自动内存管理,为程序员减轻了内存释放的负担,也减少了犯错的机会。 不支持指针操作,避免了非法操作内存的危险。,可移植性 分布性 高性能(相对于其他解释型语言) 健壮性,(5) 其他特性,1.3 安装SUN公司
7、的JDK,目前Java运行平台主要分为3个版本: Java SE: Java 标准平台 Java ME: Java小型平台 Java EE: Java企业平台 学习Java必须从Java SE开始。目前Sun公司已发布了Java SE 6,可以登录到Sun公司的网站下载。 ,安装JDK后产生如下目录结构: bin目录:Java工具,包括Java编译器、 解释器等。 demo和Sample目录:一些实例程序。 lib目录:Java开发类库。 jre目录: Java运行环境,包括Java虚拟机、运行类库等。,1.3 安装SUN公司的JDK(续),Java工具包括: javac:Java编译器,用来
8、将java程序编译成字节码。 java:Java解释器,执行已经转换成字节码的java应用程序。 jdb:Java调试器, 用来调试java程序。 javap:反编译,将类文件还原回方法和变量。 javadoc:文档生成器,创建HTML文件。 appletviwer:Applet解释器, 用来解释已经转换成字节码的java小应用程序。,1.3 安装SUN公司的JDK(续),1.3.1 系统环境变量path 值的设置,SDK平台提供的Java编译器(javac.exe)和Java解释器(java.exe)位于Java安装目录的bin文件夹中,为了能在任何目录中使用编译器和解释器,应在系统特性中设
9、置Path。 对于Windows2000、Windows2003、Windows XP,用鼠标右键点击“我的电脑”,弹出菜单,然后选择属性,弹出“系统特性”对话框,再单击该对话框中的高级选项,然后点击按钮“环境变量”,添加系统环境变量。 PATH = bin;,1.3.1 系统环境classpath 值的设置(续),Java虚拟机通过classpath指定的目录来寻找运行需要的Java类,以最先找到的为准。 其配置方法大致等同于环境变量Path值的配置CLASSPATH = . ; ;,1.4 Java程序开发工具,普通文本编辑器。 Notepad, Editplus, UltraEdit等。
10、 集成开发环境。 JCreator、JBuilder、JDeveloper、NetBeans、eclipse等。 最流行的开发工具。 (1) eclipse 。 网址: /downloads/ (2) NetBeans。网址: /,1.5 一个简单的Java应用程序,public class Hello public static void main (String args) System.out.println(你好,很高兴学习Java); ,main方法- Java程序入口点,格式为: public static void ma
11、in(String args) 包含main方法的类成为主类。 一个源文件最多有一个public class, 且源文件的名字与public class所定义的类名相同。 编译 javac Hello.java 生成Hello.class 运行 java Hello,1.5 一个简单的Java应用程序(续),1.6 一个简单的Java小应用程序(Java Applet),import java.applet.*; import java.awt.*; public class HelloApplet extends Applet public void paint(Graphics g) g.
12、setColor(Color.red); g.drawString(我一边喝着咖啡,一边学Java呢,5,30); g.setColor(Color.blue); g.drawString(我学得很认真,10,50); ,编译。 javac HelloApplet.java 编写HTML文件。命名为HelloApplet.html,1.6 一个简单的Java小应用程序(Java Applet), Hello World ,运行Applet程序: (1)appletviewer HelloApplet.html (2) 在浏览器中运行,不再有全局变量 不再有#include 和#define 等预处理功能 不再有struct、union及ty
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 旅游景区规划与运营管理研究报告
- 小学一年级第一学期数学家长沟通计划
- 二手奢侈品市场2025年鉴定流程与规范研究报告
- 春疫情期间班主任在线学习监督计划
- 危重症心脏患者抢救操作流程
- 心内科新入职护士培训计划
- 二零二五年度车辆抵押担保金融产品合同
- 2025版夫妻离婚后共同债权债务清偿协议书
- 2025版彩瓦装饰工程设计与销售合同
- 2025版医药备货安全保障合同范本
- 2025年大学英语四级考试题及答案
- 财政国库管理培训课件
- 国际功能、残疾和健康分类(ICF)及核心组合
- 企业管理考试题目和答案
- 2025年湖南省高考历史真题
- 质量管理基础知识培训课件
- 2025年 陕西延长石油有限责任公司所属单位招聘考试笔试试卷附答案
- 2025年食品安全法律法规的基础考试试卷及答案
- 2025贵州省水利投资(集团)有限责任公司招聘84人笔试备考题库(含答案详解)
- 保安案例培训实务指南
- (高清版)DB13∕T 5431-2021 装配式塑料水表井工程技术规程
评论
0/150
提交评论