《Java2第1章java语言概述.ppt》由会员分享,可在线阅读,更多相关《Java2第1章java语言概述.ppt(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、l1 1 学习要求:学习要求:内容:内容:u面向对象的基本概念面向对象的基本概念u用用JavaJava语言进行面向对象的程序设计语言进行面向对象的程序设计u面向对象编程环境面向对象编程环境 先修课:先修课:C C 方法:方法:u最笨的办法:多看多做多练最笨的办法:多看多做多练u上机实践,每个知识点编写小程序体会上机实践,每个知识点编写小程序体会笔记:记录要点笔记:记录要点作业:书面作业,上机实验作业:书面作业,上机实验纪律:点名纪律:点名l2 2 答疑:课后答疑:课后l3 3 评分:评分:上机作业上机作业,书面作业书面作业,出勤:出勤:30%;30%;期末考试占期末考试占70%70%l4 4
2、参考书:参考书:1)Java 技术教程技术教程 王克宏王克宏 清华大学出版社清华大学出版社2)ThinkingInJava (电子版电子版)3)C+C+程序设计程序设计J Ja av va a 2 2程程序序设设计计基基础础1l面向对象程序设计(面向对象程序设计(OOP)OOP)object oriented programmingobject oriented programmingl是一种概念,不是一种编程技巧是一种概念,不是一种编程技巧lC CC+C+JavaC#2l演绎法:讲原理,给出方法。理工科演绎法:讲原理,给出方法。理工科l归纳法:从事实、案例归纳出规律、原理。归纳法:从事实、案
3、例归纳出规律、原理。l 学生自己发现规律,缺少系统性。学生自己发现规律,缺少系统性。l演绎法、归纳法结合。演绎法、归纳法结合。l积木积木 ,工具,工具l能力?知识?能力?知识?3CC+嵌入式系统嵌入式系统JSPJAVAC#信息处理系统信息处理系统数据库系统软件系统软件4l人:人:身份证号,姓名,性别,年龄身份证号,姓名,性别,年龄看,讲,听,走等看,讲,听,走等l学生:学生:身份证号,姓名,性别,年龄,学校,年级身份证号,姓名,性别,年龄,学校,年级入校、升级、留级、毕业等入校、升级、留级、毕业等l教师:教师:身份证号,姓名,性别,年龄,学校,课程身份证号,姓名,性别,年龄,学校,课程讲课、上
4、班、下班等讲课、上班、下班等人学生学生教师教师5教室教室 黑板黑板1块块 日光灯日光灯8个个 吊扇吊扇6个个 投影机一台投影机一台 课桌椅课桌椅50套套 教室教室 画黑板画黑板 画日光灯画日光灯 开日光灯开日光灯 关日光灯关日光灯 画吊扇画吊扇 开吊扇开吊扇 关吊扇关吊扇 画投影机画投影机 开投影机开投影机 关投影机关投影机 画课桌椅画课桌椅 黑板黑板:位置位置 黑黑/白白 察黑板察黑板 Java,C+:日光灯:位置日光灯:位置 亮、暗亮、暗 开、关开、关吊扇:吊扇:位置位置 转速转速 开、关开、关投影机:位置投影机:位置 亮度亮度 开、关开、关教室:黑板教室:黑板/日日光灯光灯/吊扇吊扇/投
5、影投影机机C程序6第一章第一章 Java语言概述语言概述教学目标:教学目标:了解了解Java语言的特点及语言的特点及Java虚拟机的概念虚拟机的概念掌握掌握Java程序的种类和结构程序的种类和结构理解理解Java应用程序和应用程序和Java小程序的区别小程序的区别重点:重点:1 Java虚拟机的概念虚拟机的概念 2 Java两种程序的区别两种程序的区别难点:难点:Java程序的结构程序的结构71.1 Java语言的诞生与发展语言的诞生与发展 1991年由年由James Gosling负责开发的一个分布式代负责开发的一个分布式代码系统(码系统(Oak),是为家用消费电子产品(电冰),是为家用消费
6、电子产品(电冰箱、电视机等)进行编程控制箱、电视机等)进行编程控制。1993年年Sun 公司将目标市场转向公司将目标市场转向 Internet。1994年将年将Oak语言更名为语言更名为Java。项目小组成员经常在公司附近一家咖项目小组成员经常在公司附近一家咖项目小组成员经常在公司附近一家咖项目小组成员经常在公司附近一家咖啡厅喝咖啡,因此把咖啡原产地啡厅喝咖啡,因此把咖啡原产地啡厅喝咖啡,因此把咖啡原产地啡厅喝咖啡,因此把咖啡原产地JavaJava作为作为作为作为新语言的名称。新语言的名称。新语言的名称。新语言的名称。1995年年Java被正式发布,伴随被正式发布,伴随Internet 一起大
7、发一起大发展。展。8随着随着Java Servlet的推出,的推出,Java在电子商务方在电子商务方面开始崭露头角,最新的面开始崭露头角,最新的Java Server Page(JSP)技术的推出,更是让)技术的推出,更是让Java成为基于成为基于Web应用程序的首选开发工具。应用程序的首选开发工具。Internet的普及的普及和迅猛发展,以及和迅猛发展,以及 Web技术的不断渗透,使得技术的不断渗透,使得Java语言在现代社会的经济发展和科学研究中,语言在现代社会的经济发展和科学研究中,占据了越来越重要的地位。占据了越来越重要的地位。9与与Java有关的一些图片有关的一些图片Java的标识J
8、ava的吉祥物DukeJava之父James Gosling101.2 Java语言的特点语言的特点 简单易学简单易学 面向对象面向对象 平台无关性平台无关性 分布式分布式 可靠性可靠性 安全性安全性 支持多线程支持多线程 支持网络编程支持网络编程 编译与解释并存编译与解释并存 111.2.1 1.2.1 简单、面向对象简单、面向对象u完全面向对象。完全面向对象。u去掉了运算符重载、多继承,采用单一继承去掉了运算符重载、多继承,采用单一继承u多线程、引用(非指针)等方式。多线程、引用(非指针)等方式。u自动垃圾回收机制。自动垃圾回收机制。ujavajava语言采用了语言采用了C C语言中的大部
9、分语法语言中的大部分语法1.2.2 1.2.2 鲁棒并且安全鲁棒并且安全u强制类型检查,防止不匹配。强制类型检查,防止不匹配。ujavajava不能指针访问内存单元,减少错误发生可能性;不能指针访问内存单元,减少错误发生可能性;ujavajava的数组并非用指针实现,避免数组越界的发生。的数组并非用指针实现,避免数组越界的发生。123 3结构中立、可移植性强的解释型语言结构中立、可移植性强的解释型语言 uu字节代码(字节代码(字节代码(字节代码(BytecodeBytecode)。字节代码可以在提供)。字节代码可以在提供)。字节代码可以在提供)。字节代码可以在提供JavaJava运行时系统的多
10、种不同处理器上面执行。运行时系统的多种不同处理器上面执行。运行时系统的多种不同处理器上面执行。运行时系统的多种不同处理器上面执行。uuJavaJava严格定义了基本数据类型的大小和算术运算符严格定义了基本数据类型的大小和算术运算符严格定义了基本数据类型的大小和算术运算符严格定义了基本数据类型的大小和算术运算符的行为,因此不存在软硬件平台不兼容的情况。的行为,因此不存在软硬件平台不兼容的情况。的行为,因此不存在软硬件平台不兼容的情况。的行为,因此不存在软硬件平台不兼容的情况。4 4 解释执行、多线程解释执行、多线程u为易于实现跨平台性,为易于实现跨平台性,javajava设计成为解释执行设计成为
11、解释执行u多线程使应用程序可以同时进行不同的操作,处理多线程使应用程序可以同时进行不同的操作,处理不同的事件。不同的事件。ujavajava在执行过程中,可以动态的加载各种类库,这在执行过程中,可以动态的加载各种类库,这一特点使之我非常适合于网络运行一特点使之我非常适合于网络运行131.3 Java技术简介技术简介 目前目前Java技术主要包括三个方面:技术主要包括三个方面:J2SE(Java 2 Stand Edition)J2ME(Java 2 Micro Edition)J2EE(Java 2 Enterprise Edition)141.4 Java虚拟机虚拟机JVM(Java Vir
12、tual Machine)用软件模拟出的虚拟计算机用软件模拟出的虚拟计算机 C/C+等是属于编译型的语言,而等是属于编译型的语言,而Basic与与Lisp等等则是属于解释型的语言则是属于解释型的语言Java程序却比较特殊,它必须先经过编译的过程,程序却比较特殊,它必须先经过编译的过程,然后再利用解释的方式来运行。然后再利用解释的方式来运行。Java程序被编译为平台无关的程序被编译为平台无关的“字节码字节码”(byte-codes)。然后通过。然后通过Java的解释器解释并运行的解释器解释并运行Java的的字节码字节码。.net 中的中的 CLR15Java 源文件源文件字节码字节码.Class
13、 文件文件编译计算机(Windows)(MAC)(UNIX/linux)androidJVMapp.classapp.javaJava源文件字节码文件编译器解释器图图1.1 Java程序的运行过程:先编译,后解释程序的运行过程:先编译,后解释16n n执行机制执行机制l l1字节码字节码 *.class文件与机器码不同,不是真正的文件与机器码不同,不是真正的 CPU可可运行的指令代码,故又称伪代码。运行的指令代码,故又称伪代码。l 通过通过JVM转成本地机器代码,达到一次撰写,转成本地机器代码,达到一次撰写,到处运行。到处运行。(Write Once,Run Anywhere)lC语言能跨平台
14、吗?如能,则与JAVA区别?17app.classapp.javaJava源文件源文件字节码字节码文件文件编译器编译器windowsJVMLinuxJVMMACJVMAndroidJVM硬件硬件硬件硬件硬件硬件硬件硬件18app.cC 源文件源文件执行文件执行文件app.exe编译器编译器1windowsJVMLinuxJVMMACJVMAndroidJVM硬件硬件硬件硬件硬件硬件硬件硬件执行文件执行文件app.exe编译器编译器2执行文件执行文件app.exe编译器编译器3执行文件执行文件app.exe编译器编译器41920l2 垃圾回收机制垃圾回收机制C+u类类 MuM m1=new M2
15、0;udelete m1;自动垃圾回收自动垃圾回收u自动垃圾回收机制,周自动垃圾回收机制,周期性的释放期性的释放无用无用的对象。的对象。l3 代码安全性检测代码安全性检测沙箱安全模型沙箱安全模型本身代码检测(伪指针等本身代码检测(伪指针等)a1m1:x=7 y=0a2XX211.5 Java程序种类和结构程序种类和结构 使用使用Java语言可以编写两种类型的程序:语言可以编写两种类型的程序:Application(应用程序应用程序)和和Applet(小程序小程序)。这两种程序的开发原理是相同的,但是在运这两种程序的开发原理是相同的,但是在运行环境和计算结构上却有着显著的不同。行环境和计算结构上
16、却有着显著的不同。22Java Applet(小程序)与(小程序)与Java Application(应(应用程序)的不同之处如下:用程序)的不同之处如下:运行环境不同运行环境不同 最低要求不同最低要求不同 图形用户界面的使用方式不同图形用户界面的使用方式不同 23表表1.1 Applet与与Application的差别的差别功能要求功能要求Application(应用程序应用程序)Applet(小程序小程序)使用图形使用图形可选可选固定用图形固定用图形发布发布主要从文件系统装入主要从文件系统装入通过通过HTML连接连接内存要求内存要求最低最低Java应用程序要求应用程序要求Java程序加程序
17、加Web浏览器要求浏览器要求环境输入环境输入命令行参数命令行参数嵌入嵌入HTML文档的参数文档的参数Java虚拟机虚拟机(JVM)所要所要求的执行过程求的执行过程主函数主函数(main)启动过程启动过程init初始化过程初始化过程start启动过程启动过程stop暂停暂停/关闭过程关闭过程destroy终止过程终止过程paint绘图过程绘图过程24一般的一般的Java源程序文件由以下三部分组成:源程序文件由以下三部分组成:package语句语句(0句或句或1句句)import语句语句(0句或多句句或多句)类定义类定义(1个或多个类定义个或多个类定义)import java.io.*;publi
18、c class helloword public static void main(String args)(“hello”);25一个程序中可以有多个类,但只有一个类是主类。一个程序中可以有多个类,但只有一个类是主类。在在Java Application中,这个主类是指包含中,这个主类是指包含main()方方法的类。法的类。在在Java Applet里,这个主类是一个继承自系统类里,这个主类是一个继承自系统类Applet的子类。主类是的子类。主类是Java程序执行的入口点。程序执行的入口点。26总结:总结:了解了解JavaJava程序设计语言的特性。程序设计语言的特性。区分区分JavaJava与与C+C+两种语言的不同。两种语言的不同。掌握掌握JavaJava程序包含应用程序和小应用程序包含应用程序和小应用程序两种不同类型。程序两种不同类型。熟练掌握每种程序的基本结构。熟练掌握每种程序的基本结构。27END28