收藏 分享(赏)

第01章 Java概述70659.ppt

上传人:dreamzhangning 文档编号:3336244 上传时间:2018-10-15 格式:PPT 页数:67 大小:1.14MB
下载 相关 举报
第01章 Java概述70659.ppt_第1页
第1页 / 共67页
第01章 Java概述70659.ppt_第2页
第2页 / 共67页
第01章 Java概述70659.ppt_第3页
第3页 / 共67页
第01章 Java概述70659.ppt_第4页
第4页 / 共67页
第01章 Java概述70659.ppt_第5页
第5页 / 共67页
点击查看更多>>
资源描述

1、Java开发技术,肖泉 博士 江西财经大学信息管理学院 电子邮件:,关于我,管理科学与工程 博士 信息系统项目管理师 主要研究方向:管理信息系统、决策支持理论方法 完成项目: 武汉市建设工程造价数据管理与分析系统 武汉钢铁(集团)公司大型厂质量管理信息系统 湖北省招标中心招标专家库系统 广西省科技厅信息中心知识管理系统 湖南华宇集团ERP系统,关于你,以下的名词和应用你知道吗? MIS、SCM、CRM、HRM、ERP、DSS Blog、RSS、Wiki、Witkey、SNS、LAMP以下网站的图标你认识吗?,关于你,你为什么选修Java?,开堂白,1.课程简介(基本情况) 课程名称:Java开

2、发技术 课程代码:33974 学 分:4 开课学期:第五学期 预修课程:C语言与程序设计方法 课程类别:专业选修课,开堂白,2.教学目的 通过课程的学习,使学生掌握Java面向对象的基础编程; 掌握Java的线程、输入输出技术、图形界面编程、JDBC数据库技术等; 掌握Java语言的网络编程方法与技术 掌握Java面向对象编程的思想和实践,综合运用程序设计基础、数据库系统原理、管理信息系统等前导课程的理论方法,培养学生一定的信息系统分析设计与开发的能力。,开堂白,3.教学要求 Java语言的基础知识 Java语言的基本规范 Java语言的面向对象特点 Java中的字符串处理 Java的异常处理

3、机制 Java语言的输入/输出处理机制和方法 Java的线程处理机制,开堂白,3.教学要求 Java语言的图形用户界面设计 Java Applet程序设计 Java语言的数据库编程 Java语言的网络编程技术和应用 Java的Servlet和JSP技术 Java技术的应用实例,开堂白,4.重点难点 重点: Java语言的基本规范,Java语言的面向对象特性,Java语言基本类库的使用,异常处理,输入输出技术,线程处理、图形用户编程、JDBC技术等。 难点:掌握Java语言自身特点,灵活运用设计模式及相关技术,编写具有实际应用价值的计算机应用软件与管理信息系统。,开堂白,5.课程考核 考核方式:

4、平时20%,小作业20%,大作业60% 平时成绩以考勤、课堂及上机表现为主; 小作业考核是否按要求完成课内及课后作业、并考核所设计程序的完善性、健壮性等方面; 大作业以考核设计的软件、系统及其文档和报告为主。,开堂白,6.参考材料 1、Bruce Eckel著, 陈昊鹏译. Java编程思想(第4版) . 机械工业出版社, 2007. 2、Cay S. Horstmann, Gary Cornell著, 朱志等译. Java核心技术(卷、卷). 机械工业出版社, 2008. 3、Erich Gamma, Richard Helm, Ralph Johnson等著,李英军等译. 设计模式: 可复

5、用面向对象软件的基础. 机械工业出版社, 2007. http:/ http:/ http:/,第1章 Java语言概述,主要内容:,1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境1.3 Java程序举例1.4 其他集成运行环境(IDE),1.1 Java语言的产生及其特点,1.1.1 Java语言发展简史1.1.2 Java虚拟机1.1.3 Java平台是不断扩展的计算平台1.1.4 Java语言的特点1.1.5 Java与C/C+语言的异同,James Gosling,1.1.1 Java语言发展简史,1991年,当初Sun公司的 James Gosling开展了一

6、个名为“Green”的项目,主要目的是开拓消费类电子产品市场,即OAK语言 ,希望用于控制嵌入在有线电视交换盒、PDA等的微处理器. 1993 年交互式电视和 PDA 市场开始滑坡,而 Internet 正处于增长时期,因此Sun 公司将目标市场转向 Internet 应用程序。 1995年5月23,Sun World大会,正式发布这项技术 1995年Sun 公司的 HotJava 浏览器问世 1996年 发布了Java1.0 1997年2月,Java的开发包Java v1.1发布 1998年12月,Sun公司发布了Java2平台。 2003年发布了 J2sdk 1.4 2004年,发布J2s

7、dk 1.5(Java SE 5.0) 2011年7月,Java SE Development Kit 7 正式发布,经过十年的发展,Java技术已经成为世界上最卓越的企业应用和移动应用开发平台之一,历史上从没有过像Java这样的平台能够如此广泛地被应用,目前全球Java经济价值已经超过1,200亿美元。 当初Sun公司推出Java时提出的口号是:“编写一次,到处运行”。十年来,Java的跨平台和开放特性已经得到公认,此外,Java语言还具有众多优秀特性,包括面向对象、类似于C和C+的表达语法、良好的安全性等,在许多方面成为Cobol和C+等语言的继任者,受到全球开发人员的青睐,并已成为企业级

8、业务应用的首选开发平台。,Java的蓬勃发展,1.1.2 Java虚拟机,Java虚拟机(Java Virtual Machine, JVM)是软件模拟的计算机,可以在任何处理器上安全并且兼容的执行保存在.class文件中的字节码。 Java程序的跨平台特性主要是指字节码文件可以在任何具有Java虚拟机环境的计算机或者电子设备上运行。Java虚拟机中的Java解释器(java.exe)负责将字节码文件解释成为特定的机器码并执行。 但是,Java虚拟机的建立需要针对不同的软硬件平台做专门的实现,既要考虑处理器的型号,也要考虑操作系统的种类。目前在SPARC结构、X86结构、MIPS和PPC等嵌入

9、式处理芯片上,在UNIX、Linux、Windows和部分实时操作系统上都实现了Java虚拟机。,1.1.3 Java是不断扩展的计算平台,桌面计算: Java 2 Standard Edition (J2SE) 企业计算: Java 2 Enterprise Edition (J2EE) 嵌入计算: Java 2 Micro Edition (J2ME)为了满足不同应用领域的需求,Java提供了许多API(Application Programming Interface),这些API分成以下三大类。1)、Java Core API:由Sun制定的基本API,任何Java平台都必须提供。2)

10、、Java Standard EXtension API(javax):由Sun制定的扩充API,Java平台可以选择性地提供或加装。3)、厂商或组织所提供的API:由各家公司或组织所提供。,1.1.4 Java语言的特点,Java语言还具有简单、面向对象、分布式、健壮、安全、结构中立、可移植、多线程、动态等特点。 1)简单 Java的风格类似于C、C+ , Java提供了丰富的类库 , Java虚拟机很小 2) 面向对象 把数据和对该数据的操作都封装在一个类中 3)分布式 Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库 4)健壮Java致力于检查程序在编译和运行时的错误。,

11、1.1.4 Java语言的特点,5)安全 指针和释放内存等原C+功能被删除,避免了非法内存操作, Java虚拟机采用“沙箱“运行模式 6) 结构中立 Java源程序被编译成一种高层次的与机器无关的bytecode格式语言(伪代码),这种语言被设计在虚拟机上运行,由机器相关的解释器实现执行 7)可移植 同体系结构无关的特性使得Java应用程序可以在配备了Java解释器和运行环境的任何计算机系统上运行,这成为Java应用软件便于移植的良好基础。,1.1.4 Java语言的特点,8)多线程 Java提供的多线程功能使得在一个程序里可同时执行多个小任务 9) 动态 Java的动态特性是其面向对象设计方

12、法的发展。它允许程序动态地装入运行过程中所需要类,这是利用C+语言进行面向对象程序设计所无法实现的,第1章 Java语言概述,1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境1.3 Java程序举例1.4 其他集成运行环境,1.2 Java运行环境与开发环境,1.2.1 Java运行环境1.2.2 Java SDK开发环境1.2.3 JDK开发环境工具简单介绍,1.2.1 Java运行环境,如果只想运行别人的Java 程序可以只安装Java 运行环境(Java Runtime Environment,JRE) JRE 由Java 虚拟机、Java 的核心类、以及一些支持文

13、件组成 可以登陆Sun公司的网站http:/ 免费下载Java 的JRE,,1.2.1 Java运行环境,1.2.2 Java SDK开发环境,1. 安装Java Development Kit(JDK) 如果需要在计算机上进行Java程序开发,则需要安装Java开发环境,即JDK。JDK由Sun公司免费提供。安装时可选择安装到任意的硬盘驱动器上,例如安装到D:jdk1.5.0目录下。正确安装后,在JDK目录下有bin、demo、lib、jre等子目录,其中: bin目录保存了javac、java、appletviewer等命令文件, demo目录保存了许多java的例子, lib目录保存了J

14、ava的类库文件, jre目录保存的是Java的运行时环境。,1.2.2 Java SDK开发环境,1.2.2 Java SDK开发环境,1.2.2 Java SDK开发环境,2. 环境变量的设置 设置环境变量的目的是为了能够正常使用所安装的JDK开发包。通常,我们需要设置三个环境变量:JAVA_HOME、PATH 和 CLASSPATH。1)、 JAVA_HOME该环境变量的值就是 Java 所在的目录,一些 Java 版的软件和一些 Java 的工具需要用到该变量,设置 PATH 和 CLASSPATH 的时候,也可以使用该变量以方便设置。2)、 PATH 该环境变量指定一个路径列表,用于

15、搜索可执行文件。执行一个可执行文件时,如果该文件不能在当前路径下找到,则依次寻找 PATH 中的每一个路径,直至找到。或者找完 PATH 中的路径也不能找到,则报错。,1.2.2 Java SDK开发环境,3)、 CLASSPATH 该环境变量也指定一个路径列表,是用于搜索 Java 编译或者运行时需要用到的类。在 CLASSPATH 列表中除了可以包含路径外,还可以包含 .jar 文件。Java 查找类时会把这个 .jar 文件当作一个目录来进行查找。通常,我们需要把 JDK 安装路径下的 jrelibrt.jar 包含在 CLASSPATH 中。,1.2.2 Java SDK开发环境,设置

16、环境变量有三种方法:1)修改系统自动批处理文件,1.2.2 Java SDK开发环境,2) 在系统特性中设置PATH和CLASSPATH。 对于Window2000/NT/XP操作系统,用鼠标右键点击”我的电脑”,弹出菜单,然后选择属性,弹出”系统特性”对话框,再单击该对话框中的高级选项,然后点击按钮”环境变量”,添加如下的系统环境变量 变量名: JAVA_HOME 变量值: d:jdk1.5.0 (其内容应根据JDK安装目录变化) 变量名: PATH 变量值: d:jdk1.5.0bin;%path% (其内容应根据JDK安装目录变化) 变量名: CLASSPATH 变量值: .; d:jd

17、k1.5.0jrelibrt.jar;(其内容应根据实际情况变化),1.2.2 Java SDK开发环境,1.2.2 Java SDK开发环境,3) 在MS-DOS命令行窗口设置 也可以在MS-DOS命令行键入下列命令后,回车确认,例如 set JAVA_HOME=d:jdk1.5.0; set PATH=d:jdk1.5.0bin;%PATH%; set CLASSPATH = .;d:jdk1.5.0jrelibrt.jar; 注意,这种方式设置的环境变量只对本DOS窗口有效。,1.2.2 Java SDK开发环境,3、安装Java帮助文档 由于JDK的安装程序中并不包含帮助文档,因此必须

18、从Sun的网站上下载进行安装。可以通过IE或Netscape浏览器浏览网址:http:/ ftp中有chm版的JDK帮助文档。,1.2.2 Java SDK开发环境,1.2.3 JDK开发环境工具简单介绍,第1章 Java语言概述,1.1 Java语言的产生及其特点 1.2 Java运行环境与开发环境1.3 Java程序举例1.4 其他集成运行环境,1.3 Java程序举例,Java程序分成三类:Application(应用程序)Applet(小程序)Servlet(服务器端小程序)应用程序在计算机中单独运行,而小程序只能嵌在HTML网页中运行。这需要一些网页知识。Servlet是运行在服务器

19、端的小程序,它可以处理客户传来的请求(request),然后传给客户端(response)。本节的例子将采用notepad作为程序的编辑器,然后在JDK5.0平台下运行。,1.3.1 简单的Java应用程序,下面我们先介绍简单的Java程序,并对其进行分析。 【例1-1】要求在命令行窗口显示“Hello Wolrd!”。 我们将该文件命名为HelloWorldApp.java,其源程序如下: / HelloWorldApp.java public class HelloWorldApp /一个应用程序 public static void main(String args)System.out

20、.println(Hello World!); ,1.3.1 简单的Java应用程序,程序也可写成如下形式: / HelloWorldApp.java public class HelloWorldApp /一个应用程序public static void main (String args) System.out.println(Hello World!); 首先把它放到一个名为HelloWorldApp.java的文件中,这里,这文件名应和类名相同,而且大小敏感,因为Java解释器要求公共类必须放在与其同名的文件中。,1.3.1 简单的Java应用程序,/ HelloWorldApp.ja

21、va public class HelloWorldApp /一个应用程序public static void main (String args) System.out.println(Hello World!); Java解释器在没有生成任何实例的情况下,以main()作为入口来执行程序。Java程序中可以定义多个类,每个类中可以定义多个方法,但是最多只有一个公共类,main()方法也只能有一个,作为程序的入口。在main()方法定义中,括号()中的String args是传递给main()方法的参数,参数名为args,它是类String的一个实例,参数可以为0个或多个,多个参数间用逗号分

22、隔。,1.3.1 简单的Java应用程序,/ HelloWorldApp.java public class HelloWorldApp /一个应用程序public static void main(String args) System.out.println(Hello World!); 在main()方法的实现(大括号内) 中,只有一条语句: System.out.println(Hello World!); 它用来实现字符串的输出,这条语句实现与C语言中的printf语句和C+中cout语句相同的功能。另外,/后的内容为注释。,1.3.1 简单的Java应用程序,/ HelloWorl

23、dApp.java public class HelloWorldApp /一个应用程序public static void main(String args) System.out.println(Hello World!); 在程序中,首先用保留字class来声明一个新的类,其类名为HelloWorldApp,它是一个公共类(用public修饰)。整个类定义由大括号 括起来。在该类中定义了一个main()方法,其中public表示访问权限,指明所有的类都可以使用这一方法;static指明该方法是一个类方法,它可以通过类名直接调用;void则指明main()方法不返回任何值。对于一个应用程序

24、来说,main()方法是必需的,而且必须按照如上的格式来定义。,1.3.1 简单的Java应用程序,1.3.1 简单的Java应用程序,该文件保存在d:userchap01目录下。然后对它进行编译:d:userchap01javac HelloWorldApp.java 编译的结果是生成字节码文件HelloWorldApp.class。最后用java解释器来运行该字节码文件: d:userchap01java HelloWorldApp 结果在命令行窗口屏幕上显示HelloWorld!,1.3.1 简单的Java应用程序,【例1-2】程序SimpleInput.java完成从命令行输入简单的双

25、精度。该程序演示如何使用引用包以及如何在命令窗口输入数据。,1.3.1 简单的Java应用程序,/ SimpleInput.java import java.io.*; /引入该程序需要的类所在的包 public class SimpleInputpublic static void main(String args) throws IOException String s;BufferedReader ir=new BufferedReader(new InputStreamReader(System.in); s=ir.readLine();System.out.println(“Inpu

26、t value is:“+s);double d=Double.parseDouble(s); /将s 转换成double型System.out.println(“Input value changedafter doubled:“+Math.sqrt(d);,1.3.1 简单的Java应用程序,在JDK5.0中提供了java.util. Scanner类,可以直接从输入流读取简单数据。例如 import java.util.Scanner; public class TestScanner public static void main(String args) Scanner cin =

27、new Scanner(System.in);int a = cin.nextInt(), b = cin.nextInt();System.out.println(a + b);System.out.printf(“+ Math.PI);System.out.format(“%4d%4d“,a,b);System.out.format(“Pi is approximately %f“, Math.PI); ,1.3.1 简单的Java应用程序,输入: 123 456 输出: 579 3.141592653589793 123 456Pi is approximately 3.141593,1

28、.3.1 简单的Java应用程序,【例1-3】从m个数中抽出n个数,试计算中奖的概率。该例演示如何从可视化组件输入数据并转换成整形数据,然后从命令窗口输出数据。 / Proba.java,1.3.1 简单的Java应用程序,/ Proba.java import javax.swing.*; public class Proba public static void main(String args) String input= JOptionPane.showInputDialog(“你希望抽取多少个数?“);int k=Integer.parseInt(input);input=JOpti

29、onPane.showInputDialog(“一共有多少个数? “);int n=Integer.parseInt(input);int result=1;for(int i=1;i=k;i+)result=result*(n-i+1)/i;System.out.println(“你中奖的几率是1/“+result+“);System.exit(0); ,1.3.2 简单的Applet小程序,下面的例子将演示Applet在网页中的应用。 【例1-4】 该程序的目的是在浏览器中显示“Hello World in Applet!” / HelloWorldApplet.java import j

30、ava.awt.*; import java.applet.*;public class HelloWorldApplet extends Applet /一个小程序public void paint(Graphics g)g.drawString(“Hello World in Applet!”,20,20); ,1.3.2 简单的Applet小程序,import java.awt.*; import java.applet.*;public class HelloWorldApplet extends Applet /一个小程序public void paint(Graphics g)g.

31、drawString(“Hello World in Applet!”,20,20); 这是一个简单的Applet(小应用程序)。程序中,首先用import语句输入java.awt和java.applet下所有的包,使得该程序可能使用这些包中所定义的类,它类似于C中的#include语句。然后声明一个公共类HelloWorldApplet,用extends指明它是Applet的子类。在类中,我们重写父类Applet的paint()方法,其中参数g为Graphics类,它表明当前作画的上下文。在paint()方法中,调用g的方法drawString(),在坐标(20,20)处输出字符串“Hell

32、o World in Applet!”,其中坐标是用象素点来表示的。,1.3.2 简单的Applet小程序,import java.awt.*; import java.applet.*;public class HelloWorldApplet extends Applet /一个小程序public void paint(Graphics g)g.drawString(“Hello World in Applet!”,20,20); 这个程序中没有实现main()方法,这是Applet小程序与应用程序Application运行机制的主要区别之一。为了运行该程序,首先我们也要把它放在文件Hel

33、loWorldApplet.java中,然后对它进行编译: d:userchap01javac HelloWorldApplet.java 得到字节码文件HelloWorldApplet.class。,1.3.2 简单的Applet小程序,由于Applet中没有main()方法作为Java解释器的入口,我们必须编写HTML文件,把该Applet嵌入其中,然后用appletviewer来运行,或在支持Java的浏览器上运行,如IE。 ExampleApplet.html文件如下:An Applet ,1.3.2 简单的Applet小程序,其中用标记来启动HelloWorldApplet.clas

34、s指明字节码所在的文件,width和height指明applet所占的大小,我们把这个HTML文件存入ExampleApplet.html,然后使用appletviewer工具来运行该网页,如下: d:userchap01appletviewer ExampleApplet.html 这时屏幕上弹出一个窗口,其中显示Hello World in Applet!,1.3.3 Servlet,Java Servlet和Java Applet正好是相对应的两种程序类型。Applet运行在客户端,在浏览器内执行,而Servlet在服务器内部运行,通过客户端提交的请求启动运行,并将结果还回给客户端或调用

35、它的程序。 进一步学习,请参考本书的第17章相关内容。,1.4 其他集成运行环境,现在常用的Java项目开发环境有:Eclipse 、JBuilder、Sun Java Studio、IntelliJ IDEA、Java Workshop、NetBeans IDE、Gel+J2SDK、JCreator +J2SDK、JDK+记事本、EditPlus+J2SDK等等。上节中的例子就是采用的“JDK+记事本”的环境。针对不同的软件系统规模和不同的应用领域,可以采用适合自己开发的工具。下面将介绍三款流行的开发工具。,1.4 其他集成运行环境,1、GEL GEL为用户提供了相当强大的功能,例如项目管理

36、功能,项目模板功能,可个性化设置语法高亮属性、行数、类浏览器、标签文档、多功能编绎器,向导功能以及完全可自定义的用户界面。 GEL小巧,同时很好的支持汉字。与JDK完美无逢集成。缺点是只能进行简单的程序开发,不能进行企业J2EE的开发应用。非常适合初学者学习使用Java。 其下载地址为http:/ Gel version 1.0 RC39, 4.3MB。其开发界面如图,1.4 其他集成运行环境,1.4 其他集成运行环境,2. EclipseEclipse是一种可扩展的免费开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工

37、具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。 Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。目前Eclipse联盟已推出其Ec

38、lipse3.1版软件,这是一款非常受欢迎的Java开发工具,这国内的用户越来越多,实际上用它开发Java的人员是最多的。用户可从http:/www.eclipse.org下载最新版本。其开发界面如图。,1.4 其他集成运行环境,1.4 其他集成运行环境,3.JBuilder JBuilder是一款大型的Java集成开发环境,它能满足很多方面的应用,尤其是对于服务器和EJB开发。下面简单介绍一下JBuilder的特点: JBuilder支持最新的Java技术,包括Applet、JSP/Servlets、JavaBean以及EJB(Enterprise JavaBeans)的应用。 用户可以自动

39、地生成基于后端数据库表的EJB Java类,JBuilder同时还简化了EJB的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言,Interface Definition Language)和控制远程对象。 JBuilder 加速了企业JavaBeans,WEB服务器,XML,移动产品和数据库应用开发,双向可视化设计工具和迅速调用J2EE应用服务器,这些应用服务器包括BEA WebLogic, IBM WebSphere, Sybase EAServer, JBoss, 和 integrated Borland Enterpris

40、e Server。拥有创新强大的JavaServer Faces, Struts, 和 Web服务设计工具,支持JDK 5.0 (J2SE 5.0), UML代码可视化,分布式因子分解,代码审核,企业单位测试,支持多语控制系统。,1.4 其他集成运行环境,JBuilder能用Servlet和JSP开发和调试动态Web 应用。 利用JBuilder可创建(没有专有代码和标记)纯Java2应用。由于JBuilder是用纯Java语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。 JBuilder拥有专业化的图形调试界面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。 JBuilder环境开发软件很方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,内存开销大,这时运行速度显得较慢。其开发界面如图1-16。,1.4 其他集成运行环境,

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

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报