Java技术及应用第一讲.ppt

上传人:sccc 文档编号:5373040 上传时间:2023-06-30 格式:PPT 页数:66 大小:1.63MB
返回 下载 相关 举报
Java技术及应用第一讲.ppt_第1页
第1页 / 共66页
Java技术及应用第一讲.ppt_第2页
第2页 / 共66页
Java技术及应用第一讲.ppt_第3页
第3页 / 共66页
Java技术及应用第一讲.ppt_第4页
第4页 / 共66页
Java技术及应用第一讲.ppt_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《Java技术及应用第一讲.ppt》由会员分享,可在线阅读,更多相关《Java技术及应用第一讲.ppt(66页珍藏版)》请在三一办公上搜索。

1、第一讲 JAVA绪论,计算机学院 林志毅QQ:16045411E-mail:,本讲要点,课程介绍什么是Java?我们的学习内容学习方法指导学习资料推荐Java绪论Java语言发展史Java语言版本演化Java语言的特点Java与C+的比较Java程序开发环境Java源程序结构与编程规范,什么是Java?,什么是Java?一种编程语言面向对象的程序设计语言,提供了编译、运行、调试工具。Java 是完全面向对象的编程语言。Java 既是一种解释执行的语言,也是一种编译执行的语言。一种软件平台平台是程序运行的硬件或软件环境,Java平台与大多数其它平台不同,是基于其它软件或硬件的纯软件平台。JVM:

2、Java虚拟机,是Java平台的基础Java API:Java应用程序接口,Java API是软件组件的集合,它们提供了很多有用的功能,如图形用户界面(GUI)。随着应用范围越来越广,Java演化出三个不同领域的应用平台J2SE:Java2 Platform,Standard Edition:标准版,桌面系统和低端服务J2EE:Java2 Platform,Enterprise Edition:企业版,企业级应用J2ME:Java2 Platform,Micro Edition:小型版,嵌入式应用开发,学习目标,最终目标:Java软件工程师Java语法、J2se平台基础、面向对象编程思想和方法

3、(Java基础)Java Web开发(简单应用)J2ee企业开发(企业级应用)、J2me(嵌入式应用)辅助技术:Struts设计模式、JavaScript、XML、SQL语言开发工具:JDK、JCreater、Eclipes、JBuilder近期目标在校期间,掌握Java Web应用本学期目标本学期,Java语法、Java基础类、面向对象编程思想和方法,培养自学能力。主要包括,1)掌握Java编程基本技能了解Java的基本常识:历史和特点掌握Java的语法和编程风格掌握面向对象编程技术能够灵活使用SUN公司提供的各种Java类,2)掌握学习Java的基本方法能够正确使用Java在线帮助文档3)

4、能够用Java来解决实际问题按正确的思路来解决问题与编程 设计模式、面向对象、良好的编程风格能够书写正确的Java应用程序与小应用程序4)也可以为SCJP做准备SCJP(Sun Certified Java Programmer),关键对知识技能的理解和掌握 课堂和自学多实践 编程与解决问题,纸上得来终觉浅,绝知此事须躬行!,课程主要内容,第1讲 java绪论第2讲 java语言的编程基础第3讲 java与面向对象技术第4讲Java的高级特性第5讲Java的基础类(输入输出类)第6讲Java的基础类(Java常用类)第7讲Java的基础类(Java异常)第8讲Java的GUI设计(图形用户界面

5、)第9讲Java多媒体技术(应用)第10讲Java多线程技术第11讲Java网络编程(包括JDBC),学习方法指导,奠定Java语法基础学习Java的第一步是用Java语言来编写程序,学习Java语言的第一步,就是熟悉其语法的使用。注意思考和总结在学习的过程中,最好能够了解Java的底层机制,而不是仅仅停留在表层,不是抄书上的例子运行出结果就可以。即便对一个简单的例子也要有耐心去琢磨、调试、改动。动手写代码在学习的过程中一定要动手做、写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己。在学到一定阶段后,试用学过的东西做些什么。培养自学能力Java API文档英文地址:h

6、ttp:/,学习资料推荐,参考书(1)2.21天学通Java 2(第3版)(专业参考版):Rogers Cadenhead,Laura Lemay,人民邮电出版社 作为需要快速掌握Java语言基础知识的傻瓜书(2)Java Swing(第二版):清华大学出版社Java GUI程序设计的字典式工具书(3)Java编程思想第3版,(美)埃克尔(Eckel,B.)著 陈昊鹏 等译,机械工业出版社,2005.5。(也可以参考侯捷译)(4)Java2核心技术(Core Java 2)卷I,II 机械工业出版社 有英文电子版及源代码。这套书的卷I适合于Java语言基本入门,卷II则可以作为进入特定应用程序

7、设计的基本指导。网络学习资源(1)Java中国开发网-http:/-软件开发-Java开发-http:/http:/http:/,软件,1)Suns Java SDK 1.6.0 2)UltraEdit,or Notepad 3)IDE 开发平台 JBuilder 2007(borland),Eclipse,IntelliJ IDEA(jetbrains),NetBeans(sun),课程要求,课程学时:24学时(上课)+8学时(实验)成绩计算:Java课程总评成绩由三次作业成绩以及考勤情况组成。作业3作为期末成绩,占总评成绩的70%。平时成绩由考勤、作业1和作业2组成,占总评成绩的30%。作

8、业要求:1)独立完成作业 抄袭:0!雷同:低分!2)按时交作业(具体见另外一个ppt),第一章 Java绪论,目标,了解Java语言的发展历史了解Java语言的特点掌握安装并设置Java开发平台掌握Java程序的组成结构掌握使用集成开发环境编写Java程序的方法,主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点1.4 Java与C+的比较1.5 Java程序开发环境1.6 Java源程序结构与编程规范,1.1 Java的历史,JAVA是SUN公司()于上世纪90年代开发。1990年12月,SUN公司的一个开发小组从事家用电器方面的小型研究项目。最初的方

9、案是用C+开发。开发人员James Gosling对C+实现这一任务感到失望,决定自己编写了一种更好的语言来实现这一项目。最初,这种语言命名为OAK,后来改名为JAVA。JAVA最初为用于家用电器而开发,JAVA的小型、安全、可移植性等特点,使其适用于WEB。JAVA产生的时候,Internet正日益流行。95年8月,Netscape公司的浏览器率先支持JAVA。随后,Microsoft的Internet Explorer浏览器也支持JAVA。这样,随着万维网的日益普及,JAVA得到了广泛的使用。,Java语言的产生,Java产生于C之后,是完全的面向对象的编程语言,充分吸取了C的优点,同时摒

10、弃了C的一些弊端。采用了程序员所熟悉的C和C语言的许多语法,同时又去掉了C语言中指针、内存申请和释放等影响程序健壮性的部分。Java语言的一个目标是跨平台,因此采用了解释执行而不是编译执行的运行环境,在执行过程中根据所在的不同的硬件平台把程序解释为当前的机器码,实现跨平台运行。Java语言具备动态下载程序代码机制,是为了适应网络计算的特点程序可以根据需要把代码实时地从服务器中下载到目标机器来执行。在此之前还没有任何一种语言能够支持这一点。#,Java现状,Java现在常用来:1)开发大规模的商业运用软件2)增强网络服务的功能3)开发智能消费型电子产品的应用软件(例如手机)目前采用Java编程还

11、比较多,看看下图,TIOBE公布2010年8月编程语言排名,Java 语言的应用前景,所有面向对象的应用开发,包括面向对象的事件描述、处理、综合等。计算过程的可视化、可操作化的软件的开发。动态画面的设计,包括图形图像的调用。交互操作的设计(选择交互、定向交互、控制流程等)。Internet 的系统管理功能模块的设计,包括 Web 页面的动态设计、管理和交互操作设计等。Intranet(企业内部网)上的软件开发(直接面向企业内部用户的软件)。与各类数据库连接查询的 SQL 语句实现。其他应用类型的程序。,主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点1

12、.4 Java与C+的比较1.5 Java程序开发环境1.6 Java源程序结构与编程规范,1.2 Java版本历史,1996年初,Sun公司发布了Java 1.0.该版本实际上并不能用来进行真正的应用程序开发。1998年,Sun在JavaOne会议上发布Java 1.2.该版本最大的改进是它的新图形工具箱更加精选并且具有可伸缩性。在Java 1.2中分为3个版本:J2SE:标准版,面向一般用户J2ME:微型版,用于手机等嵌入式设备的应用程序开发J2EE:企业版,用于服务器端处理的软件开发。本课程内容主要基于J2SE。,Java版本历史(续),Java 1.3和1.4对最初的Java 2版本作

13、了一些细微的改进,如扩展了标准类库、提高了系统性能个,修正bug。2004年发布的Java 1.5改称Java5.0,该版本对Java作出了重大改进:添加了泛型类型generic type,类似于C+的模版“for each”循环可变元参数自动打包元数据枚举静态导入2006发布版本Java6.0(见word文档),主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点1.4 Java与C+的比较1.5 Java程序开发环境1.6 Java源程序结构与编程规范,1.3 Java语言的特点,1)简单性:Java的语法比 C/C+简单设计Java语言的目标就是简单

14、,并尽量使程序 bug free没有指针没有malloc(),free(),也没有析构方法(删除了C+中极少被使用、不容易理解和令人混淆的功能)Java虚拟机采用了一种效率不是很高的垃圾回收机制确保Java的“简单化”的另一特性在于“小而单纯”。,2)面向对象面向对象是一项很强的设计功能,因为它促成明确的接口定义,并允许发展者建立可重复使用的“软 件IC”,即可即插即用的组件。Java的面向对象含义实质上就是C+,并包含Objective C的一些延伸,以提供更有动态的解决方案。采用面向对象后的优点容易设计简单,容易理解程序易于软件代码的重用性可以在一定程度上提高软件的健壮性,3)平台无关性J

15、ava口号:Write Once,Run Anywhere,4)安全性Java设计目的是要供使用于网络/分布式运算环境。为此,Java非常强调安全性,以确保建立无病毒且不会被侵入的系统。Java的验证技术是以公钥(public-key)加密法为基础。Java语言的安全机制基于“不存在可信任的代码”的概念。其运行环境提供了以下四级安全保障机制:字节码校验器:当Java字节码进入Java解释器解释执行之前,首先必须经过字节码校验器的检查。类装载器:类装载器负责把来自网络的类加载到单独的内存区域,类和类之间相互不会干扰。运行时内存布局:Java解释器将决定程序中类的内存布局,这就意味着不怀好意的程序

16、无法预先知道一个类的内存布局结构。文件访问机制:客户端用户还可以限制从网络上加载的类只能访问某些被允许的系统,如文件和硬盘。,5)多线程Java中的多线程处理非常便捷。只要OS支持,Java中的线程就可以利用多个处理器。但在底层,主流平台的线程实现机制各不相同,Java并没有对此实现平台相关性。在不同的机器上,只是调用多线程的代码完全相同,Java仅是简单地把多线程的实现交给底层的OS去处理。并行工作一般可以提高程序执行效率但同时也增加了程序编写难度,6)网络性Java提供了包容广泛的例程库,可处理像HTTP和FTP这样的TCP/IP协议。Java应用程序可通过一个特定的URL来打开并访问对象

17、,就像访问本地文件系统那样简单。7)鲁棒性Java在编译和运行程序时都要对可能出现的问题进行检查它提供自动垃圾收集来进行内存管理 面向对象的异常处理机制8)解释性编译器 javac 将处理.java源文件生成类文件 类文件可通过名称为 java 的加载实用程序解释执行,将Java 字节码转换为机器可执行代码。Java白皮书的关键字还有:分布式、高性能、动态性等,主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点1.4 Java与C+的比较1.5 Java程序开发环境1.6 Java源程序结构与编程规范,1.4 JAVA与C+的比较,Java语言的设计过程

18、中充分参考了C/C+的特性,但在很多地方有所不同。1.全局变量Java程序不能定义程序的全局变量,而类中的公共、静态变量就相当于这个类的全局变量。这样就使全局变量封装在类中,保证了安全性,而在C/C+语言中,由于不加封装的全局变量有时候会由于使用不当而造成系统的崩溃。,JAVA与C+的比较(续),2.条件转移指令C/C+语言中用goto语句实现无条件跳转。Java语言没有goto语言,通过异常处理语句try、catch、finally来取代之,提高了程序的可读性,也增强了程序的鲁棒性。3.指针指针是C/C+语言中最灵活,但也是最容易出错的数据类型。用指针进行内存操作往往造成不可预知的错误。而且

19、,通过指针对内存地址进行显示类型转换后,可以类的私有成员,破坏了安全性。在Java中,程序员不能进行任何指针操作,同时Java中的数组是通过类来实现的,解决了数组越界这一C/C+语言中不做检查的问题。,JAVA与C+的比较(续),4.内存管理在C/C+语言中,程序员可以使用库函数分配和释放内存。但管理不当反而会导致程序出错。在Java中,所有的数据结构都是对象,通过运算符new分配内存并得到对象的使用权,但程序员无法控制内存何时回收,避免了内存管理不周而引起的系统崩溃。但这样的内存管理机制也导致了Java在某些应用场合出现性能瓶颈,例如:在高速数据库管理系统中,数据锁是非常珍贵的资源,Java

20、的内存管理机制有可能使得数据锁无法及时释放而影响系统性能。,JAVA与C+的比较(续),5.数据类型的一致性在C/C+语言中,不同的平台上,编译器对简单的数据类型如int、float等分别分配不同的字节数。例如:int类型的变量在IBM PC上为16位,在VAX-11上就为32位,导致了代码数据的不可移植。在Java中,对数据类型的位数分配总是固定的,而不管是在任何的计算机平台上。因此就保证了Java数据的平台无关性和可移植性。6.类型转换在C/C+语言中,可以通过指针进行任意的类型转换,具有相当高的安全风险。而在Java语言中,系统要对对象的处理进行严格的相容性检查,防止不安全的转换。,JA

21、VA与C+的比较(续),7.头文件在C/C+语言中使用头文件声明类的原型和全局变量及库函数等,在大型系统中,维护这些头文件是非常困难的。Java不支持头文件,类成员的类型和访问权限都封装在一个类中,运行时系统对访问进行控制,防止非法的访问。同时,Java中使用import语句与其它类进行通信,以便访问其它类的对象。8.预处理C/C+语言中有宏定义,而用宏定义实现的代码往往影响程序的可读性(考试中经常出现,并一度视为衡量C/C+程序员水平的尺度之一)。而Java不支持宏定义。,1.4 Java与C+的比较,主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点

22、1.4 Java与C+的比较1.5 Java程序开发环境1.6 Java源程序结构与编程规范,1、Java开发过程,2、Java开发工具,Java IDE,Borland JBuilder,J2SDK,NetBeans Sun Java Studio,IBM Visual Age for Java Eclipse,Microsoft VJ+,Oracle JDeveloper,BEA WebLogic Workshop,JCreator,JDK是Java语言最基本的开发工具。(介绍)javac(Java编译器)java(Java解释器)javap(Java反汇编器)javadoc(Java文档

23、管理器)appletviewer(Java Applet浏览器),Java 的编辑环境,JDK是有助于程序员开发Java 程序的 Java 开发工具包包括:类库编译器调试器Java 运行时环境(JRE),JDK 提供的常用工具,javac 是用来编译源代码的命令。java 是用于执行类文件的命令,而类文件将在 Java 虚拟机中运行类。appletviewer 命令允许在万维网浏览器的环境之外运行 Applet。,Java程序开发过程(使用JDK),开发程序前,进行开发环境配置安装JDK(见本章附录)选择安装开发工具JDK记事本等文本编辑工具,可以直接使用JDK环境JCreater、JBuil

24、der、EClipes等集成开发环境开发步骤编写程序源文件源文件类型名为.java编译生成字节码文件生成的字节码文件类型名为.class运行应用程序运行:通过Java虚拟机独立运行程序小应用程序运行:嵌入浏览器中运行,JDK目录结构简介,JDK目录结构简介binjavac:Java编译器,用来将java程序编译成字节码文件.class。java:Java解释器,执行已经转换成字节码的java应用程序。appletviewer:Java虚拟浏览器,用来解释嵌到网页中的java小应用程序。lib:Java类库Jrelib:Java核心类库,JDK环境下程序编译与运行,编写Java应用程序源文件在D

25、盘创建工作目录exam1(不是必须的)在工作目录下,使用记事体程序编写文件名为HelloWorld.java输入程序代码准备编译和运行程序(环境配置)开始运行(cmd),打开命令窗口输入set path=c:program filesjavajdk1.5.0_11bin并回车,设置Java命令的搜索路径输入d:并回车,将当前盘转至D盘输入cd exam1并回车,当前目录转至我们的工作目录编译成字节码文件输入javac HelloWorld.java并回车,将源文件编译成字节码文件执行程序输入java HelloWorld并回车,执行程序,一个Java Application程序基本结构,第一个

26、 Java 程序,/这是名称为“HelloWorld.java”的简单程序import java.io.*;class HelloWorld public static void main(String args)System.out.println(“欢迎访问 Java 世界!“);,导入必要的包,在记事本编辑Java程序,单击开始,依次选择程序-附件-记事本,/这是名称为“HelloWorld.java”的简单程序import java.io.*;class HelloWorld public static void main(String args)System.out.println(

27、“欢迎访问 Java 世界!“);,编译和运行,单击开始,依次选择程序-附件-命令提示符,进入程序所保存的目录,输入命令编译HelloWorld,输入命令执行HelloWorld,输出结果,JAVA程序开发环境,1.NetBeans(见相关word文档)2.Eclipse,3.JBuilder2007,1.NetBeans,安装过程:(1)首先安装JDK:jdk-6u4-windows-i586-p.exe(2)安装NetBeans:netbeans-6.0.1-ml-windows.exe(3)选择JDK:,JAVA程序开发环境,1.NetBeans2.Eclipse,3.JBuilder2

28、007,2.Eclipse,安装过程:(1)安装JDK.(2)解压eclipse-java-europa-fall2-win32.zip。解压后即可使用,无需安装。帮助文件:http:/help.eclipse.org/help32/index.jsp,演示如何使用Eclipse创建一个工程。,JAVA程序开发环境,1.NetBeans2.Eclipse,3.JBuilder2007,3.JBuilder2007,JBuilder2007基于Eclipse构建。安装过程与一般软件无异。,JBuilder2007的大部分功能与Eclipse一致,但具有更加完善的工程管理、性能测试等功能,是一款相

29、当成熟的商业化Java软件集成开发环境。,主要内容,1.1 Java语言发展史1.2 Java语言版本演化1.3 Java语言的特点1.4 Java与C+的比较1.5 Java程序开发环境1.6 Java程序结构与编程规范,1.6 JAVA程序结构,例如:有一个java源程序可以是如下结构,该源程序命名为HelloWorldApp.java:package javawork.helloworld;/*把编译生成的所有.class文件放 到包javawork.helloworld中*/import java.awt.*;/告诉编译器本程序中用到系统的AWT包import javawork.new

30、century;/*告诉编译器本程序中用到用户自 定义的包javawork.newcentury*/public class HelloWorldApp./*公共类HelloWorldApp的定 义,名字与文件名相同*/class TheFirstClass./第一个普通类TheFirstClass的定义class TheSecondClass./第二个普通类TheSecondClass的定义./其它普通类的定义interface TheFirstInterface./第一个接口TheFirstInterface的定义,java编程规范,包(package)即目录,它能够将某一个类放入到某个目

31、录当中,使得程序员能够更好地管理Java类(Class)和接口(Interface)。import语句如果在源程序中用到了除java.lang这个包以外的类(无论是系统的类还是自己定义的包中的类),都必须用import语句标识,以通知编译器在编译时找到相应的类文件。,Java命名规范,包名:包名是全小写的名词,中间可以由点分隔开,例如:java.awt.event;类名:首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写,例如:class HelloWorldApp;接口名:命名规则与类名相同,例如:interface Collection;方法名:往往由多个单词合成,第一个

32、单词通常为动词,首字母小写,中间的每个单词的首字母都要大写,例如:balanceAccount,isButtonPressed 变量名:全部字母小写,一般为名词。例如:length;常量名:习惯上应该全部字母大写,单词间用下划线“_”,分隔。例如:MAX_SIZE,R_PG13,TERM_LIMIT,Java命名规范(续),参数的命名:参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证参数名称为一个单词的情况下使参数的命名尽可能明确。Javadoc注释:除了常见的注释方式之外,Java语言规范还定义了一种特殊的Javadoc多行注释:以/*开头,而以*/结束。使用

33、Javadoc注释的好处:编写的注释可以被自动转为在线文档,省去了单独编写程序文档的麻烦。例如:/*This is an example of*Javadoc*author Darchon*since 2008-2-28*/#,Eclipse演示,技能训练一 Java入门,目的通过本次训练,使学生了解Java编程环境,掌握Java程序开发过程。训练内容1、编写一个简单的Java应用程序(源文件Hello.java),该程序在命令行窗口输出两行文字:“我叫XXX,来自XX班”、“我的爱好是XXX”。2、写出在实训过程中涉及到的知识点及难点,遇到的问题和解决的办法,有哪些收获。3、实验后的练习(1

34、)编译器如何提示丢失大括号的错误?(2)编译器如何提示将System写成system的错误?(3)编译器如何提示丢失行尾分号的错误?(4)编译器如何提示程序文件名与类名不同的错误?,技能训练二 熟悉Java语言开发过程,目的使学生掌握Java开发环境的安装与配置,学会下载安装JDK开发工具包,掌握使用JDK环境开发Java程序的过程,掌握集成开发工具软件下载、安装和使用。训练内容1、操作从Sun公司网站下载JDK5.0、6.0的标准版,并安装使用记事本编写Java应用程序、Java小程序使用javac命令编译,并检查生成的字节码文件运行Java应用程序编写小程序的嵌入网页文件,并运行2、总结实

35、训过程中涉及到的知识点及难点,遇到的问题和解决的办法,有哪些收获,附录:JDK的安装,2.1 Java运行环境的安装,J2SDK的下载与安装 J2SDK分为以下三个版本:Java 2 Platform,Standard EditionJava 2 Platform,Enterprise EditionJava 2 Platform Micro Edition 免费下载J2SE 5.0的网址:http:/安装J2SDK,2.1 Java运行环境的安装,J2SDK的设置 Windows98:SET PATH=%PATH%;D:JDK15006BINSET CLASSPATH=,;D:JDK15006LIB;%CLASSPATH%,2.1 Java运行环境的安装,J2SDK的设置 WindowsXP:,返回,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号