java程序设计与案例 语言概述

上传人:繁星 文档编号:88250723 上传时间:2019-04-22 格式:PPT 页数:59 大小:670.50KB
返回 下载 相关 举报
java程序设计与案例 语言概述_第1页
第1页 / 共59页
java程序设计与案例 语言概述_第2页
第2页 / 共59页
java程序设计与案例 语言概述_第3页
第3页 / 共59页
java程序设计与案例 语言概述_第4页
第4页 / 共59页
java程序设计与案例 语言概述_第5页
第5页 / 共59页
点击查看更多>>
资源描述

《java程序设计与案例 语言概述》由会员分享,可在线阅读,更多相关《java程序设计与案例 语言概述(59页珍藏版)》请在金锄头文库上搜索。

1、Java程序设计与案例,Java语言概述,2,教学目的,Java语言 通过本门课程的学习可以使学生掌握Java语言的基本语法和编程规范;尤其是掌握用Java语言进行网络编程的方法和技巧。 程序设计方法 Java语言是一种面向对象的语言,通过学习使学生掌握用面向对象进行编程的思想和实践。 培养实际开发能力,使学生成为一名合格的Java程序员。,Java语言概述,3,课程信息,本课程以Java语言为素材,讲授面向对象程序设计的方法与思路。 课程主要包括以下内容: Java语言基础知识。 面向对象程序设计的基本概念与方法。 Java语言面向对象程序设计基础。 图形用户界面设计。 Java编程中的几个

2、专题(异常处理、输入输出、多线程、多媒体、网络编程等)。,Java语言概述,4,授课时间安排,Java语言概述,5,Java语言概述,6,课程总体安排,授课学时 32学时 上机安排32学时 答疑及辅导 时间:按上课时间 地点:411 考核方式 平时 (20%) 、上机(20%)、考试(占60%)。,Java语言概述,7,教学用书,Java程序设计与案例 刘宝林, 高等教育出版社,2004.11 Java2入门经典 JDK5 Ivor HORTON,机械工业出版社,2006.9 Java SE6.0编程指南 吴亚峰,人民邮电出版社,2007.11 网络教学资源 软件、电子教案、联机文档,Java

3、语言概述,Java语言概述,9,主要内容,Java的历史与发展 Java语言概貌 Java开发工具 Java的程序结构 Applet与application,Java语言概述,10,Java的历史,1991年初,Sun Microsystems公司设立一项较大规模“消费者电子产品先进软件发展项目”,该项目是为了发展小型、可靠、可移植、分布式、实时的嵌入式系统。 项目小组开发了一种与平台无关的新语言,命名为“Oak”。其灵感来源于项目主持人James Gosling办公室外的一棵橡树(Oak),它就是Java语言的前身。 但因Oak名称与其它产品雷同,最后将开发的新语言取名为“Java”。据说是

4、项目小组成员经常在公司附近一家咖啡厅喝咖啡,因此把咖啡原产地Java作为新语言的名称。 1995年,Sun Microsystems公司正式发布Java产品。,Java语言概述,11,Java的发展,1995.5.23 Java诞生(Java1.0.2 API) 1997.2.18 JDK1.1 (java1.1 API) 1998.12 J2SE 1.2 2000.5 J2SE 1.3 2002.2 J2SE 1.4.0 2004.10 J2SE 5.0 (1.5.0) 2006.4 J2SE 6.0 (Beta) 网址 (查询新动向) http:/ http:/ James Gosling

5、,Java的吉祥物 Duke,Java语言概述,13,Java语言的特点,在Java语言白皮书中,Java被描述为“是一种简单、面向对象、分布式、解释、健壮、安全、结构中立、可移植、高效能、多线程、动态的语言。 A Simple, object-oriented, distributed, robust, secure, achitecture-neutral, portable, high-performance, multi-threaded, and dynamic language. James Gosling, Henry McGilton. The Java Language En

6、vironment,A White Paper.,Java语言概述,14,Simple,Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。Java语言的简单性主要体现在三个方面: Java的风格类似于C+,因此C+程序员初次接触Java语言,就会感到很熟悉。从某种意义上讲,Java语言是C/C+语言的一个变种,因此,C+程序员可以很快地掌握Java编程技术。 Java摒弃了C+中容易引发程序错误的一些特性,如指针、结构以及内存管理等。 Java提供了丰富的类库,可以帮助我们很方便地开发Java程序。,Java语言概述,15,object-oriented,面向对象可以

7、说是Java最重要的特性,所以它支持继承、重载、多态等面向对象的特性。Java语言的设计是完全面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。Java中的对象模型简单,容易扩展。,Java语言概述,16,Robust(健壮的 ),Java是一种强类型的语言,其类型检查比C+还要严格,它不但在编译时检查程序的代码,同时还在运行时检查程序的代码。因此,Java中不可能出现太多难以跟踪的隐含错误。 Java没有指针,不能引用内存指针,因而避免了扰乱内存或超过数组边界的错误。 Java进行内存自动回收,因而程序员不必操心内存的分配和重新分配的问题,有效地避免了C+最头疼的内存泄漏问题。 J

8、ava鼓励多用接口,少用类。接口定义一组行为,类则实现这些行为。程序传递的是接口,而不是类,从而隐藏了实现细节。实现细节发生改变时,只要新类实现旧接口,其余一切照样正常工作。,Java语言概述,17,Secure,Java的安全性可以从两个方面得到保证。一方面,在Java语言里,删除了指针和释放内存的C+功能,避免了非法内存操作。另一方面,通过Java的安全体系架构来确保Java代码的安全性。当我们从网上下载Java代码在本地执行时,Java的安全架构能确保恶意的代码不能随意访问我们本地计算机资源,如删除文件,访问本地网络资源等操作都是被禁止的。,Java语言概述,18,Interpreted

9、,Java代码是解释执行的,我们使用Java编译器将Java代码编译成字节码,这是一种中间代码,这种字节码可以被传输给任何具有Java运行环境(JRE)和Java的平台,并且在执行时不需要重新编译和连接。,Java语言概述,19,architecture-neutral,Sun公司把“Write once, run anywhere.”定义为Java的核心特点。 为了让Java应用程序能够在网络上任何地方执行,其编译器会产出一种结构中立的字节代码(Bytecode)。字节代码可以在提供Java运行时系统的多种不同处理器上面执行。,Java语言概述,20,multi-threaded,Java语

10、言的重要特性就是在语言级支持多线程的程序设计。可有效地提高程序执行的效率。,Java语言概述,21,high-performance,字节代码可以动态地为执行应用程序的特定CPU解释成机器码。字节代码格式在设计上即顾及机器码的产生,因此实际的机器码产生程序相当简单。 解释器运行时不需检查运行环境,自动垃圾收集器设为优先级最低后台线程,以保证内存得到更有效的应用。 对于运算量很大的程序可以采用原生代码编写,再经由Java平台转换。 Just-In-Time编译技术更是让字节代码的执行速度大幅度提升。,Java语言概述,22,Dynamic,可动态增加和修改类库内容, 面向对象设计的延伸。 Jav

11、a的基本组成单元是类,而Java的类又是运行时动态装载的。可以在分布环境中动态地维护应用程序和类库的一致性。更能适应时刻变化的环境,Java不会因程序库的更新,而必须重新编译程序,Java语言概述,23,Java语言与CC+语言的比较,全局变量 在Java语言程序中,不能在所有类之外定义全局变量,只能通过在一个类中定义公用、静态的变量来实现一个全局变量,这样在Java语言对全局变量进行了更好的封装。而在CC+语言中依赖于不加封装的全局变量常常造成系统的崩溃。 goto Java语言不支持CC+语言中的goto语句,而是通过例外处理语句try、catch、finally等来代替C C+语言中用g

12、oto来处理遇到错误时的跳转情况,使程序更可读且更结构化。,Java语言概述,24,Java语言与CC+语言的比较,指针 指针是CC+语言中最灵活,也是最容易产生错误的数据类型。Java语言对指针进行了完全的控制,程序员不能直接进行任何指针操作。同时,数组作为类在Java语言中实现,它很好地解决了数组访问越界这一CC+语言中不作检查的错误。 内存管理 在C 语言中,程序员通过库函数malloc()和free()来分配和释放内存, C+语言中则通过运算符new和delete来分配和释放内存。而在Java语言中,所有的数据结构都是对象,通过运算符new为它,Java语言概述,25,Java语言与C

13、C+语言的比较,们分配内存。通过new得到对象的处理权,而实际分配给对象的内存可能随程序的运行而改变,Java运行系统对此自动进行管理并且进行垃圾收集,有效地防止了由于程序员的误操作而导致的错误,并且更好地利用了系统资源。 数据类型的支持 在CC+语言中,对于不同的平台,编译器对于简单数据类型如int、float等分别分配不同长度的字节数,但在Java语言中,对于这些数据类型总是分配固定长度的位数,从而保证了Java语言的平台无关性。,Java语言概述,26,Java语言与CC+语言的比较,类型转换 在CC+语言中,可以通过指针进行任意的类型转换,常常带来不安全性,而Java语言中,运行时系统

14、对对象的处理要进行类型相容性检查,以防止不安全的转换。 结构与联合 CC+语言中的结构与联合中的所有成员均为公有,这就带来了安全性问题。 Java语言中不包含 结构与联合,所有的内容都封装在类中。,Java语言概述,27,Java语言与CC+语言的比较,宏定义 CC+语言中用宏定义来实现的代码给程序的可读性带来了困难。在 Java语言中不支持宏,它通过关键字final来声明一个常量,以实现宏定义中广泛使用的常量定义。 头文件 CC+语言中用头文件来声明全局变量、库函数等,在大的系统中,维护这些头文件很困难。而Java不支持头文件, Java语言中用import语句与其他类进行通信,以便使用它们

15、的方法。,Java语言概述,28,Java与几种常用语言的比较,Java语言概述,29,Java语言的缺点,解释型语言,运行速度较慢 语言标准有待进一步统一 缺乏稳定的编程环境,Java语言概述,30,Java是什么,Java是面向对象的程序设计语言 Java是Internet上的世界语。 Java是最佳的网络应用开发语言。 Java是环境 Java是产业,Java已经逐步从一种单纯的计算机高级编程 语言发展为一种重要的Internet平台,并进 而引发、带动了Java产业的发展和壮大,成 为当今计算机业界不可忽视的力量和重要 的发展潮流与方向 !,Java语言概述,31,Java的工作方式,

16、文件类型 .java Java源文件 .class 二进制字节码文件 编译过程,Java语言概述,32,Java的工作方式,本地计算机系统,Java虚拟机(JVM),.class 二进制字节码文件,.java java源程序文件,编译,Java语言概述,33,什么是JVM?,Java虚拟机(Java Virtual Machine, JVM)实际上是一个类似于真实计算机系统的抽象机(Abstract Computing Machine),它拥有一组指令集,用来解释“.class”字节代码;也就是说,JVM并不认识所谓的Java语言,而仅仅能够读懂class文件中有限的指令、符号及其它一些辅助信息。,Java语言概述,34,Java虚拟机,编译型工作方式,解释型 工作方式,Java语言概述

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号