版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JAVA语言概述
21.1.1Java语言的发展1991年由JamesGosling负责开发的一个分布式代码系统(Oak),最初是为家用消费电子产品(电冰箱、电视机等)进行编程控制。1993年Sun公司将目标市场转向
Internet
。1994年将Oak语言更名为Java。1995年Java被正式发布,之后立即引起极大的轰动。
3Java目前的主要应用许多大公司购买了Java的许可证。众多软件开发商开始支持Java软件产品。面向对象的应用开发。Intranet(企业内部网)上的软件开发。动态画面的设计,包括图形图像的调用。与各类数据库连接查询的SQL语句实现。其他应用类型的程序。
41.1.2Java语言的特点2-1简单性面向对象分布式处理健壮性结构中立安全性系统精简,但功能齐备。
风格类似于C++,对C++程序员而言非常容易掌握。
Java摒弃了C++中容易引发程序错误的地方,如指针操作和内存管理;提供丰富的类库。
完全是面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。
支持TCP/IP协议。Java应用程序可通过一个特定的URL来打开并访问对象,就像访问本地文件系统那样简单。
提供面向对象的异常处理机制,在编译时能对Null指针检测、数组边界检测、异常出口字节代码校验等。自动垃圾收集来进行内存管理。
将源程序编译成一种结构中立的中间文件格式。只要有Java运行系统的机器都能执行这种中间代码。Java语言提供的安全。
编译器提供的安全。
字节码校验。类装载。
51.1.2Java语言的特点2-2可移植性解释性高性能多线程动态Java应用程序可以在配备了Java解释器和运行环境的任何计算机系统上运行,而与体系结构无关。
Java编译器将java源文件生成类文件.class,类文件可通过java命令解释执行,将Java字节码转换为机器码。
JIT编译器。可以提高
Java代码的执行速度。
内置多线程功能,使得在一个程序里可同时执行多个小任务。带来的好处是更好的交互性和实时控制性。
允许程序动态地装入运行过程中所需要的类,这是C++语言进行面向对象程序设计所无法实现的。61.1.3Java与C++的比较项目JavaC++全局变量
不存在全局变量
存在数据类型和转换
无结构、枚举或者联合,转换时进行类型相容检查
通过指针进行任意的类型转换,带来不安全性
范围运算符
无作用域范围运算符::
有数组对象,有只读的length
无length内存管理可创建不属于基本数据类型的对象
不能提前声明不必进行提前声明
必须预处理
没有预处理机制
有头文件
importinclude指针
无有goto和virtual无有注释文档
对注释文档的内建支持
无71.1.4Java程序工作机制4-181、Java虚拟机4-2实现平台无关性的基础就是Java虚拟机,是以Java字节码为指令组的软CPU。负责对本地*.class文件解释执行。包含类加载器、字节确认器、以及JIT实时编译器。
类加载器:用来取得从网络或本地的类文件。
字节确认器:确认类文件是否有正确的格式。
JIT:使虚拟机能提高到编译式的运行效率。
92、字节码4-3*.class文件与机器码不同,不是真正的CPU可运行的指令代码,故又称伪代码。通过JVM以及JRE将其转成本地机器代码,达到一次撰写,到处运行的效益。(WriteOnce,RunAnywhere)
103、垃圾收集4-4虚拟机使用两个独立的堆内存,分别用于静态内存分配和动态内存分配。非垃圾收集堆内存,用于存储所有类定义、常量池和方法表。另一个堆内存,用于垃圾收集的算法适用于存放在动态堆内存中的对象。垃圾收集器在收集对象前调用finalize方法。显式调用垃圾收集(System.gc())方法,不能保证立即运行,因为其优先级很低。111.2.1Java应用程序举例2-1//这是文件名为“HelloWorld.java”的简单应用程序importjava.io.*;//引入包class
HelloWorld{//定义类publicstaticvoidmain(Stringargs[])//main方法{
System.out.println(“欢迎来到Java世界!”);//输出数据}}
定义类的关键字类名必须这么写12保存并运行2-2以java为扩展名,保存时注意类型。131.2.2Java小应用程序举例2-1/**HelloToJava.java*/importjava.awt.Graphics;importjava.applet.*;publicclassHelloToJava
extendsApplet{publicStringsHello;publicvoidinit(){
sHello="欢迎来到Java世界!";}
publicvoidpaint(Graphicsg){g.drawString(sHello,50,50);}}文档注释,可以使用javadoc命令生成HTML帮助文件。装入系统类库。14保存并运行2-2将上页文件保存为HelloToJava.java(必须)。<HTML><APPLETCODE="HelloToJava.class"WIDTH=200HEIGHT=100> </APPLET></HTML>将文件保存为*.htm或*.html文件。首先将HelloToJava.java文件进行编译(javac命令)。
javacHelloToJava.java然后使用appletviewer*.htm
查看效果。151.2.3Java程序结构(1)至多有一个public类,文件名必须与类名相同。(2)程序可以有一个或多个其它类。(3)当需要从某个类继承或使用某个类及其方法时,使用import引入该类的定义。(4)Java程序组成结构package //0个或1个,必须放在文件开始
import //0个或多个,必须放在所有类定义之前
publicclassDefinition //0个或1个,文件名必须与类名相同
classDefinition //0个或多个interfaceDefinition //0个或多个
161.3开发工具与开发步骤安装Java2SDK开发工具。设置环境变量:
path=javac和java命令所在的目录。
classpath=存放字节码文件的目录。Java2SDK简介及使用。Java程序的集成开发环
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年秋新华师大版七年级上册数学课件 第2章 整式及其加减 2.4整式的加减 1. 同类项
- 夫妻共同还款协议书模板
- 房子装潢承包协议书模板
- 板材店铺转让协议书模板
- 中国上市发电公司2023年回顾及未来展望-安永-2024
- 员工应具备的职业素质(培训)
- 财务会计试卷考卷真题题库
- 大学英语精读原文1-6册完整版
- 2024届江西省景德镇市高三下学期第三次质量检测(二模)物理试题(解析版)
- 2023年医用电子直线加速器项目评估分析报告
- MOOC 跨文化交际通识通论-扬州大学 中国大学慕课答案
- 仪表安装检查及调试记录表
- 美丽中国2024年第五全国国家版图知识竞赛题库
- 2024-2029年中国小罐茶行业市场现状分析及竞争格局与投资发展研究报告
- 中国建设银行财务报表分析-2024鲜版
- 小班语言《小黄鸡和小黑鸡》课件
- 2024届上海市高三一模作文范文汇编(15区) -
- 砖砌围墙施工专业技术方案
- 急性心肌梗死PCI术后并发症分析及护理对策
- 《劳斯莱斯》课件
- 新民警纪律培训课件
评论
0/150
提交评论