《java程序设计课件》由会员分享,可在线阅读,更多相关《java程序设计课件(63页珍藏版)》请在金锄头文库上搜索。
1、Java语言程序设计语言程序设计E_Mail: 电话:638889591java程序设计课程介绍n课时课时 :96 课时课时n分为两部分:分为两部分:l讲课部分:64 课时,课堂教学l实践部分:32 课时,课程实验n学习目标学习目标 l理解程序运行的原理l了解程序开发的过程l掌握简单的程序设计语言l具备基本的编程技能2java程序设计目目 录录第第1章:程序设计概述章:程序设计概述第第2章:章:Java基础基础第第3章:程序流程控制章:程序流程控制第第4章:方法章:方法第第5章:数组章:数组第第6章:面向对象的程序设计概念章:面向对象的程序设计概念第第7章:类的继承章:类的继承第第8章:类的多
2、态性章:类的多态性第第9章:文字图形与章:文字图形与GUI设计设计第第10章:字符串章:字符串3java程序设计第一章第一章程序设计概述程序设计概述4java程序设计 主要内容主要内容程序设计的概念程序设计的概念 程序设计语言程序设计语言算法与逻辑实现算法与逻辑实现JavaJava概述概述JavaJava运行环境运行环境 5java程序设计 1.1 1.1 程序设计的概念程序设计的概念1 1什么是程序设计什么是程序设计 利利用用计计算算机机解解决决问问题题,首首先先要要按按照照人人们们的的意意愿愿,借借助助计计算算机机语语言言,将将解解决决问问题题的的方方法法、公公式式、步步骤骤等等编编写写成
3、成程程序序,然然后后将将程程序序输输入入到到计计算算机机中中,由由计计算算机机执执行行这这个个程程序序,这这个个设设计计和和书书写写程程序序的的整整个个过过程程就就是是程程序设计。序设计。 程序设计是根据给出的具体任务,编制一个能正确程序设计是根据给出的具体任务,编制一个能正确完成该任务的计算机程序。完成该任务的计算机程序。 计算机程序是有序指令的集合或者是具有一定结构计算机程序是有序指令的集合或者是具有一定结构的语句的集合。它能被计算机执行。的语句的集合。它能被计算机执行。6java程序设计 为为了了能能很很好好地地完完成成给给定定的的任任务务,程程序序设设计计过过程程大大致致需需要三步:要
4、三步: 确定算法与数据结构确定算法与数据结构; 用流程图表示程序的思想用流程图表示程序的思想; 用程序设计语言编制计算机程序用程序设计语言编制计算机程序。2 2程序设计方法程序设计方法 面向过程的结构化程序设计面向过程的结构化程序设计 面向对象程序设计面向对象程序设计 结结构构化化程程序序设设计计是是由由荷荷兰兰学学者者DijkstraDijkstra在在2020世世纪纪7070年年代代提提出出的的,其其主主要要思思想想是是自自顶顶向向下下、逐逐步步求求精精、模模块块编程编程。7java程序设计面向过程编程 在面向过程的编程方法中,会先将问题分解为较小的部分,逐个解决。然后再将所有的解决方案组
5、合起来,解决整个问题。 面向过程编程的步骤:编写的一段代码称为过程一个过程在执行时可以访问另一个过程 把过程组合起来就形成了程序 把所有程序整合起来就形成应用软件 示例 : BASIC、Fortran、Pascal、COBOL8java程序设计面向过程编程方法的局限性 代码不可重用代码不可改变,灵活性差9java程序设计 面面向向对对象象的的程程序序设设计计(Object Object Oriented Oriented Programming Programming ,缩缩写写为为OOPOOP)是是一一种种先先进进的的程程序序设设计计方方法法,OOPOOP实实际际上上是是围围绕绕着着各各类类
6、事事物物进进行行程程序序设设计的。计的。 OOPOOP本本质质是是把把数数据据和和处处理理数数据据的的过过程程(函函数数)当当成成一一个个整整体体 对对象象。一一旦旦在在程程序序中中建建立立了了一一个个对对象象,其其他他程程序序员员可可以以在在其其他他的的程程序序中中使使用用这这个个对对象象,完完全全不不必必重重新新编编制制繁繁琐琐复复杂杂的的代代码码。对对象象的的重重复复使使用用可可以以大大大大地地节节省省开开发发时时间间,切切实实地地提提高高软软件件的开发效率。的开发效率。10java程序设计面向对象的编程方法面向对象编程 类、对象、消息与封装 抽象继承和组合11java程序设计面向对象编
7、程 面向对象方法把程序看作离散对象的集合,这些对象中包含了相应的数据结构以及与其他对象交互的方法 优点:可重用灵活,可修改示例: C+、Java、Microsoft Visual Basic .NET、Microsoft Visual C#、Microsoft Visual C+12java程序设计类、对象、消息与封装 类类12324512245对象对象n类是对象的模板或类是对象的模板或蓝图,定义了对象蓝图,定义了对象的属性和设计阶段的属性和设计阶段建立的操作建立的操作n对象是类的实例,对象是类的实例,要占用内存,而且要占用内存,而且对象的生命周期有对象的生命周期有限限13java程序设计抽象
8、类是对象的蓝图,描述了对象并定义了对象的属性和操作抽象就是将类简化,只使用那些对定义对象有用的元素14java程序设计继承和组合继承指定了类之间的所属关系多个类共享相同的属性和操作,提高了代码的可重用性示例:顾客 “是一种” 人雇员 “是一种” 人基类基类顾客雇员人派生类派生类15java程序设计 2程序设计风格程序设计风格 程序设计时程序应程序设计时程序应结构清晰结构清晰、合理合理,编写出来的,编写出来的程序不仅可在机器上正确执行,还要便于程序的调试程序不仅可在机器上正确执行,还要便于程序的调试和维护,让别人能看懂。和维护,让别人能看懂。 学习程序设计过程中,必须养成良好的程序设计风学习程序
9、设计过程中,必须养成良好的程序设计风格。好的程序设计风格有助于提高程序的正确性、可格。好的程序设计风格有助于提高程序的正确性、可读性、可维护性、可用性。读性、可维护性、可用性。16java程序设计 建议从以下方面,逐步形成良好程序设计风格建议从以下方面,逐步形成良好程序设计风格: :n编码格式和编码约定在整个程序中应保持一致;编码格式和编码约定在整个程序中应保持一致; n程序中应给出必要的注释。程序中应给出必要的注释。 n对变量、标识等的命名,采用对变量、标识等的命名,采用“匈牙利命名法匈牙利命名法”。n程序书写采用缩进格式,突出程序的层次结构。程序书写采用缩进格式,突出程序的层次结构。n每每
10、一一行行只只写写一一条条语语句句,使使用用括括号号间间隔隔表表达达式式或或语语句句的组成部分。的组成部分。n使使用用结结构构化化、面面向向对对象象的的编编程程技技术术,提提高高程程序序可可重重用性、可扩充性用性、可扩充性 。n提高程序健壮性,预防用户的操作错误。提高程序健壮性,预防用户的操作错误。 返回返回返回返回17java程序设计1.2 1.2 程序设计语言程序设计语言 编编写写计计算算机机程程序序所所用用的的语语言言即即程程序序设设计计语语言言,是是人人与与计计算算机机之之间间交交换换信信息息的的工工具具。程程序序设设计计语语言言的的发发展展从从面面向向过过程程,到到面面向向对对象象,进
11、进一一步步发发展展成成为为面面向向组组件件,经经历历了了非非常常曲曲折折的的发发展展过过程程。总总的的来来说说可可以以分分成成机机器器语语言言、汇汇编编语语言言、高高级级语语言言、面面向向对对象语言象语言等等。等等。 18java程序设计程序设计语言经历:程序设计语言经历:机器语机器语机器语机器语言言言言汇编语汇编语汇编语汇编语言言言言高级语高级语高级语高级语言言言言结构化程序设计结构化程序设计结构化程序设计结构化程序设计面向对象程序设计面向对象程序设计面向对象程序设计面向对象程序设计高级语言:高级语言:19java程序设计1机器语言机器语言 机机器器语语言言是是计计算算机机第第一一代代语语言
12、言,它它由由0 0、1 1代代码码构构组组的的机机器器指指令令集集合合组组成成。是是最最底底层层、能能直直接接被被机机器器所所接受的语言。接受的语言。 用用机机器器语语言言编编写写程程序序,计计算算机机硬硬件件可可直直接接识识别别,执执行行速速度度比比较较快快,基基本本上上充充分分发发挥挥了了计计算算机机的的速速度度性性能。能。 不不同同的的CPUCPU,其其机机器器语语言言也也不不同同。针针对对一一种种计计算算机机所编写的机器语言程序,不能在另一种计算机上运行。所编写的机器语言程序,不能在另一种计算机上运行。 机机器器语语言言不不容容易易记记忆忆,程程序序编编写写难难度度大大,调调试试修修改
13、改繁繁琐琐,且且不不易易移移植植,但但执执行行速速度度最最快快,它它是是一一种种面面向机器的程序设计语言。向机器的程序设计语言。 20java程序设计2 2汇编语言汇编语言 汇编语言是第二代程序设计语言。汇编语言是第二代程序设计语言。 汇汇编编语语言言是是用用助助记记符符代代替替操操作作码码,用用地地址址符符号号代代替替地地址址码码,使使机机器器语语言言“符符号号化化”,所所以以也也称称汇汇编编语语言是符号语言。言是符号语言。 汇汇编编语语言言与与特特定定类类型型的的机机器器相相对对应应,也也是是一一种种面面向向机机器器的的语语言言。事事实实上上,每每一一个个计计算算机机厂厂家家都都为为自自己
14、己的的机机器器制制定定了了一一套套机机器器码码的的“助助记记符符”,即即汇汇编编语语言言指令系统。指令系统。 21java程序设计 汇汇编编语语言言与与机机器器语语言言是是一一、一一对对应应的的,因因此此,对对于于不不同同的的计计算算机机,针针对对同同一一问问题题所所编编写写的的汇汇编编语语言言源源程程序序是是互互不不通通用用的的。用用汇汇编编语语言言编编写写的的程程序序执执行行效效率率比较高,但通用性与可移植性仍然比较差。比较高,但通用性与可移植性仍然比较差。 总总的的来来说说,汇汇编编语语言言比比机机器器语语言言前前进进了了一一步步。但但是是,计计算算机机不不能能直直接接识识别别用用汇汇编
15、编语语言言编编写写的的程程序序,必必须须由由一一种种专专门门翻翻译译程程序序将将汇汇编编语语言言程程序序翻翻译译成成机机器器语语言程序,计算机才能执行。言程序,计算机才能执行。 22java程序设计3 3高级语言高级语言 机机器器语语言言和和汇汇编编语语言言都都是是面面向向机机器器的的语语言言,称称为为低低级级语语言言。它它们们对对机机器器依依赖赖性性很很大大,用用它它们们开开发发的的程程序序通通用用性性差差,且且要要求求程程序序员员必必须须熟熟悉悉和和了了解解计计算算机机硬硬件的每一个细节,普通计算机用户很难胜任编程工作。件的每一个细节,普通计算机用户很难胜任编程工作。 随随着着计计算算机机
16、技技术术的的发发展展及及计计算算机机应应用用领领域域的的不不断断扩扩大大,计计算算机机用用户户的的队队伍伍不不断断壮壮大大,而而且且这这个个队队伍伍中中绝绝大大部部分分不不是是计计算算机机专专业业人人员员。为为此此,从从2020世世纪纪5050年年代代中中期期开开始始,逐逐步步发发展展了了面面向向问问题题的的程程序序设设计计语语言言,称称为为高高级级语语言言。高高级级语语言言与与具具体体的的计计算算机机硬硬件件无无关关,其其表表达达方方式式接接近近于于被被描描述述的的问问题题,接接近近于于自自然然语语言言和和数学语言,易被人们接受和掌握。数学语言,易被人们接受和掌握。 23java程序设计 高
17、高级级语语言言的的显显著著特特点点是是独独立立于于具具体体的的计计算算机机硬硬件件,通用性和可移植性好。通用性和可移植性好。 目目前前,计计算算机机高高级级语语言言已已有有上上百百种种之之多多,得得到到广广泛泛应应用用的的也也有有十十几几种种,并并且且几几乎乎每每一一种种高高级级语语言言都都有有其最适用的领域。其最适用的领域。高级语言发展经历了二个阶段。高级语言发展经历了二个阶段。 第一阶段高级语言是第一阶段高级语言是过程化过程化的语言,如:的语言,如:BASIC语语言、言、C语言、语言、FORTRAN语言、语言、COBOL语言、语言、PASCAL语言、语言、LISP语言等都是过程化的语言。语
18、言等都是过程化的语言。过程过程化语言编程时需要一步一步地安排好机器的执行顺序,化语言编程时需要一步一步地安排好机器的执行顺序,要告诉机器怎么做。要告诉机器怎么做。 24java程序设计 第第二二个个阶阶段段的的高高级级语语言言是是非非过过程程化化语语言言。非非过过程程化化语语言言只只需需告告诉诉机机器器做做什什么么就就可可以以了了,由由机机器器自自己己生生成成和和安安排排执执行行的的步步骤骤。如如FOXBASEFOXBASE、FOXPROFOXPRO都都是是非过程化的语言。非过程化的语言。 用用任任一一种种高高级级语语言言编编写写的的源源程程序序都都不不能能被被计计算算机机直直接接执执行行,在
19、在执执行行之之前前,必必须须由由编编译译程程序序或或解解释释程程序序翻翻译译成成机机器器能能接接受受的的目目标标代代码码。与与低低级级语语言言相相比比,用用高高级级语语言言编编写写的的程程序序其其执执行行的的时时间间和和空空间间效效率要差。率要差。 取取其其所所长长,上上述述三三类类语语言言可可用用在在不不同同的的场场合合,一一般般科科学学计计算算、数数据据处处理理采采用用高高级级语语言言比比较较合合适适,而实时控制因为速度要求高,往往采用汇编语言。而实时控制因为速度要求高,往往采用汇编语言。 25java程序设计4 4面向对象程序设计语言面向对象程序设计语言(OOPL)(OOPL) OOPL
20、OOPL是是建建立立在在用用对对象象编编程程的的方方法法基基础础上上的的,是是当当前程序设计采用最多的一种语言。前程序设计采用最多的一种语言。 OOPL OOPL具有封装性、继承性和多态性。具有封装性、继承性和多态性。 OOPLOOPL有有两两大大类类:一一类类是是纯纯粹粹的的面面向向对对象象语语言言,在在纯纯粹粹的的面面向向对对象象语语言言中中,几几乎乎所所有有的的语语言言成成分分都都是是“对对象象”,如如:SmalltalkSmalltalk、JavaJava等等,这这类类语语强强调调开开发发快快速速原原型型的的能能力力;另另一一类类是是混混合合型型面面向向对对象象语语言言,如如:C+C+
21、、Object Object PascalPascal,这这类类语语言言是是在在传传统统的的过过程程化化语语言基础上增加面向对象机制,它所强调的是运行效率。言基础上增加面向对象机制,它所强调的是运行效率。 成成熟熟的的面面向向对对象象语语言言通通常常都都提提供供丰丰富富的的类类库库和和强强有力的开发环境。有力的开发环境。返回返回返回返回26java程序设计5 5组件技术组件技术 所所谓谓组组件件可可理理解解为为自自包包含含的的、可可编编程程的的、可可重重用用的的、与与语语言言无无关关的的代代码码片片段段,可可以以作作为为整整体体很很容容易易地地插插入入到到应应用用程程序序中中。组组件件技技术术
22、是是计计算算机机软软件件发发展展的的最最新新结结果,也是非常有效的软件构造方法。果,也是非常有效的软件构造方法。 返回返回返回返回27java程序设计1.3 1.3 算法与程序逻辑的实现算法与程序逻辑的实现 分析问题,确定算法分析问题,确定算法 将将要要解解决决的的问问题题进进行行分分析析,提提取取操操作作的的对对象象,并并找找出出操操作作对对象象之之间间的的关关系系。在在此此基基础础上上确确定定具具体体解决问题的方法和步骤,设计出一种优化算法。解决问题的方法和步骤,设计出一种优化算法。 选择程序设计语言进行程序设计选择程序设计语言进行程序设计 选选择择适适当当的的程程序序设设计计语语言言,将
23、将算算法法转转换换成成程程序序代码。人们常把程序定义为:代码。人们常把程序定义为:程序程序= =算法算法+ +数据结构数据结构+ +程序设计语言程序设计语言+ +工具和环境工具和环境 程序测试程序测试 设设计计一一组组足足够够的的测测试试数数据据,使使用用这这组组测测试试数数据据来运行程序。来运行程序。 分分析析问问题题、确确定定算算法法在在整整个个解解决决问问题题过过程程中中是是非常重要的一步,决不可忽视。非常重要的一步,决不可忽视。 28java程序设计 1算法算法(1)什么是算法)什么是算法 算法是解题的步骤,是一组有穷的规则,它们算法是解题的步骤,是一组有穷的规则,它们规定了解决某一特
24、定问题的一系列运算,是对解题规定了解决某一特定问题的一系列运算,是对解题方案的准确与完整的描述。方案的准确与完整的描述。 制定一个算法,一般要经过设计算法、描述算制定一个算法,一般要经过设计算法、描述算法、分析算法和验证算法等阶段。法、分析算法和验证算法等阶段。 29java程序设计(2 2)算法的特性)算法的特性 一个算法具有下列五个重要的特性:一个算法具有下列五个重要的特性: 确定性确定性 、有穷性、有穷性 、可行性、可行性 、输入和输出、输入和输出 。(3 3)算法的描述)算法的描述 算法的描述方法可以归纳为以下几种算法的描述方法可以归纳为以下几种: : 自然语言自然语言。 图形图形,如
25、,如N-SN-S图、流程图,图的描述与算法语图、流程图,图的描述与算法语 言的描述对应。言的描述对应。 算法语言算法语言,即:程序设计语言、伪代码。,即:程序设计语言、伪代码。 30java程序设计(4 4)衡量算法优劣的方法)衡量算法优劣的方法 选选用用的的算算法法首首先先应应该该是是“正正确确的的”。此此外外,主主要要考虑如下考虑如下3 3点:点: 执行算法所耗费的时间,即时间特性。执行算法所耗费的时间,即时间特性。 执行算法所耗费的存储空间,即空间特性。执行算法所耗费的存储空间,即空间特性。 算法应易于理解、易于编码、易于调试。算法应易于理解、易于编码、易于调试。 当当然然,我我们们希希
26、望望选选用用一一个个所所占占存存储储空空间间小小、运运算算时时间间短短、其其它它性性能能也也好好的的算算法法。然然而而,实实际际上上很很难难做做到到十十全全十十美美。原原因因是是上上述述要要求求有有时时相相互互抵抵触触,要要节节约约算算法法的的执执行行时时间间往往往往要要以以牺牺牲牲更更多多的的空空间间为为代代价价;而而为为了了节节省省空空间间可可能能要要耗耗费费更更多多的的计计算算时时间间。因因此此我我们们只能根据具体情况有所侧重。只能根据具体情况有所侧重。 31java程序设计2 2程序逻辑的实现程序逻辑的实现 所有的程序都是为了解决现实生活中的问题而开发的,所有的程序都是为了解决现实生活
27、中的问题而开发的,在开始编写程序之前,必须根据一系列的逻辑步骤在开始编写程序之前,必须根据一系列的逻辑步骤来分析要解决的问题。这些步骤包括:来分析要解决的问题。这些步骤包括:识别输出和输入要求识别输出和输入要求 确定相关的处理方法确定相关的处理方法 实现逻辑实现逻辑 :用流程图或者伪代码表示出程序逻辑:用流程图或者伪代码表示出程序逻辑 流程图用一系列符号来表示程序的逻辑,它包含有一个流程图用一系列符号来表示程序的逻辑,它包含有一个符号集,每个符号表示指定类型的操作。这些符号符号集,每个符号表示指定类型的操作。这些符号通常有:接收输入、处理、显示输出和作判断等。通常有:接收输入、处理、显示输出和
28、作判断等。 32java程序设计符号符号活活动输入处理输出(显示)输出(文档)判断(决策)流程线:连接流程图的各步骤,并指示步骤的执行顺序起止符:指示流程图的开始或结束 常用流程图符号意义33java程序设计【例【例1-11-1】某工厂工资以计件形式发放,每月月末根据工人生产的产品个数来某工厂工资以计件形式发放,每月月末根据工人生产的产品个数来计算其月薪:月薪计算其月薪:月薪= =每生产一个产品的酬金每生产一个产品的酬金该月生产产品的个该月生产产品的个数,求工人的月薪。数,求工人的月薪。该问题可以用以下步骤来规划解决方案。该问题可以用以下步骤来规划解决方案。1 1、识别输出和输入元素。、识别输
29、出和输入元素。输出:输出:(1) (1) 工人编号工人编号 (2) (2) 月薪月薪输入:输入:(1) (1) 工人编号工人编号 (2) (2) 产品个数产品个数2 2、确定相关的处理。、确定相关的处理。 处理:处理:(1) (1) 接收工人编号接收工人编号 (2) (2) 接收产品个数接收产品个数 (3) (3) 查看产品个数查看产品个数 (4) (4) 计算得出月薪计算得出月薪 (5) (5) 显示工人编号和月薪显示工人编号和月薪3 3、实现逻辑(画流程图),流程图如下所示。、实现逻辑(画流程图),流程图如下所示。34java程序设计开始结束接收工人编号月薪=单位酬金个数输出工人编号和月薪
30、接收产品个数35java程序设计【例【例1-21-2】某软件公司欲招聘一位资深系统分析员,很多人前来应征。经过笔某软件公司欲招聘一位资深系统分析员,很多人前来应征。经过笔试,需要向所有笔试成绩在试,需要向所有笔试成绩在6060分以下的应聘者发出拒绝信,同分以下的应聘者发出拒绝信,同时通知有资格者前来面试。可以用以下步骤来规划解决方案。时通知有资格者前来面试。可以用以下步骤来规划解决方案。1 1、识别输出和输入元素。、识别输出和输入元素。输出:输出:(1) (1) 应聘者编号、姓名。应聘者编号、姓名。 (2) (2) 发送信件类型发送信件类型输入:输入:(1) (1) 应聘者编号、姓名。应聘者编
31、号、姓名。 (2) (2) 面试分数面试分数2 2、确定相关的处理。、确定相关的处理。 处理:处理:(1) (1) 接收应聘者编号、姓名和分数接收应聘者编号、姓名和分数 (2) (2) 查看应聘者分数查看应聘者分数 (3) (3) 根据分数判断是否合格根据分数判断是否合格 (4) (4) 显示信件类型显示信件类型3 3、实现逻辑(画流程图),流程图如图下所示。、实现逻辑(画流程图),流程图如图下所示。 36java程序设计接收应聘者编号、姓名和分数笔试分数大于60?开始结束输出“拒绝”输 出 “面 试”37java程序设计练习:计算运费练习:计算运费场景描述场景描述铁路运输根据运送货物的路程来
32、决定所收取的单位运费。铁路运输根据运送货物的路程来决定所收取的单位运费。100100千米以内,每吨每千米千米以内,每吨每千米1.001.00元;元;100100千米以上,每吨每千米千米以上,每吨每千米0.800.80元。元。要求要求:创建流程图以显示场景中描述的计算过程,按以下步骤:创建流程图以显示场景中描述的计算过程,按以下步骤来规划解决方案来规划解决方案: :1 1、确定场景中的输出和输入元素。、确定场景中的输出和输入元素。2 2、确定相关的处理。、确定相关的处理。3 3、画出流程图。、画出流程图。38java程序设计Java语言是由语言是由Sun公司于公司于1995年年5月月23日正式推
33、出的面向对象的日正式推出的面向对象的程序设计语言,集安全性、简单性、程序设计语言,集安全性、简单性、易用性和平台无关性于一身,适合易用性和平台无关性于一身,适合网络环境下编程使用。网络环境下编程使用。1.4 Java的诞生的诞生39java程序设计40java程序设计印度橡树印度橡树41java程序设计1991年年 Sun 公司进军消费电子产品公司进军消费电子产品(IA)市场市场。1991.4 Sun成立“Green”小组,以C+为基础开发新的程序语言,James Gosling取名时看到窗口橡树,即命名为Oak。1992.10 Green小组组员在印尼爪哇岛度假喝咖啡时灵机一动,小组组员在印
34、尼爪哇岛度假喝咖啡时灵机一动,将这种技术转移到将这种技术转移到web上,并把上,并把Oak改名为改名为Java。19934 web 在 Internet上开始流行,Java一炮而红。 1995.5 Sun公司正式发表公司正式发表Java与与HotJava产品产品。 1995.12 微软微软(MicroSoft) IE加入支持加入支持Java的行列。的行列。 1996.2 Java Beta测试版结束,Java 1.0版正式诞生。 1997.2 Java急速发展至急速发展至1.11.1版,届时分为版,届时分为Personal Java和和Embedded Java两大派。两大派。 1999.7
35、升级至升级至1.2版。版。 2000.9 升级至升级至1.3版。版。目前使用的是目前使用的是1.5版、版、1.6版版42java程序设计 Java2 Software Development Kit,Enterprise Edition Java2 Software Development Kit,Standard Edition Java2 Software Development Kit,Micro Edition43java程序设计JavaJava语言的特点语言的特点简述简述Java历史历史Java的特点:的特点:简单性简单性面向对象面向对象安全性安全性平台无关平台无关多线程多线程网络功
36、能网络功能执行效率执行效率JavaJava源程序源程序源程序源程序编译器编译器编译器编译器字节码文件字节码文件字节码文件字节码文件.class.classWindowsWindows操作环境操作环境操作环境操作环境UnixUnix操作环境操作环境操作环境操作环境JVMJVMJVMJVMJVMJVMMacMac操作环境操作环境操作环境操作环境44java程序设计Java与C/C+的主要区别1.跨平台:跨平台:1. C/C+语言编译为机器码;语言编译为机器码;Java语言编语言编译为字节码,通过译为字节码,通过JVM编译为机器码编译为机器码2.废除指针:废除指针:C/C+语言有指针类型;语言有指针
37、类型;Java语言没有指针语言没有指针类型类型3.继承:继承:3. C+允许多继承;允许多继承;Java语言仅允许单语言仅允许单继承继承4.速度:速度:C/C+运行速度快;运行速度快;Java运行速度慢运行速度慢45java程序设计Java的分类qJ2SE(Standard Edition) J2的标准版,通常使用在的标准版,通常使用在PC上。上。qJ2EE(Enterprise Edition) 企业级企业级Java,扩展了给企业使用的,扩展了给企业使用的EJB与与Servlet等功能。等功能。qJ2ME(Micro Edition) 从从J2SE中取出适用于家电或嵌入式设备功能中取出适用于
38、家电或嵌入式设备功能的版本,为在移动电话上所使用的的版本,为在移动电话上所使用的Java版本。版本。46java程序设计JavaJava语言的开发环境语言的开发环境q从从网站上免费下载网站上免费下载J2SDK(Java2 Software Development Kit),),并利用命令行方式操作并利用命令行方式操作javac(编译器编译器););java(解释器解释器)qJava集成开发环境集成开发环境(IDE)有:有:Eclipse、JBuilder 、 JCreator 、Visual Age for Jave、Visual J+、Visual Caf等等47java程序设计JavaJa
39、va语言的开发环境语言的开发环境路径设置路径设置对对Java SDK的设置主要是设置环境变量,以方便使用的设置主要是设置环境变量,以方便使用bin目录中的各种目录中的各种工具。工具。假如你把假如你把JDK安装在安装在C:j2sdk1.4.2_03目录下目录下,如果你使用的是如果你使用的是Windows9x操作系统,可以在操作系统,可以在C盘根目录的盘根目录的autoexec.bat文件中加入如文件中加入如下语句:下语句: set classpath=.;C:j2sdk1.4.2_03lib; path= C:j2sdk1.4.2_03bin; 设置路径后,需要重新启动计算机。设置路径后,需要重
40、新启动计算机。如果你使用的是如果你使用的是Windows 2000和和Window XP系统,可以选择【控制面系统,可以选择【控制面板】板】|【系统】【系统】|【高级】【高级】|【环境变量】。在出现的环境变量窗口中包含【环境变量】。在出现的环境变量窗口中包含【环境变量】和【系统变量】,在系统变量框中选择【环境变量】和【系统变量】,在系统变量框中选择【path】,单击【】,单击【编辑】按钮,在弹出的【编辑系统变量】窗口的【变量值】框最后加上编辑】按钮,在弹出的【编辑系统变量】窗口的【变量值】框最后加上; C:j2sdk1.4.2_03bin;。并点击【新建】按钮新建一个系统变量,变量。并点击【新
41、建】按钮新建一个系统变量,变量名和变量值分别为名和变量值分别为classpath和和 .;C:j2sdk1.4.2_03lib; 48java程序设计Java SDK软件包中常用工具软件包中常用工具 Java SDKJava SDK软件包中常用的工具包括:软件包中常用的工具包括:javacjavac、javajava、appletviewerappletviewer、javahjavah、javapjavap、javabjavab、javadocjavadoc等,这里介绍最常用的三种。等,这里介绍最常用的三种。javajava编译器编译器 javac.exe javac.exe是是JavaJa
42、va语言的编译器,用来编译语言的编译器,用来编译JavaJava源程序源程序(.java(.java文件文件) ),并生成字节码文件并生成字节码文件(.class)(.class)文件。文件。javajava解释器解释器 java.exe java.exe文件是文件是JavaJava语言的解释器,用来解释执行语言的解释器,用来解释执行JavaJava字节码文件。字节码文件。appletviewerappletviewer小程序浏览器小程序浏览器 appletviewer.exe appletviewer.exe提供了一个提供了一个JavaJava小程序小程序(Java Applet)(Java
43、 Applet)的运行环境。的运行环境。appletviewerappletviewer读取嵌入有小程序的读取嵌入有小程序的HTMLHTML文件,并在一个窗口中运行。文件,并在一个窗口中运行。 49java程序设计运行运行JavaJava程序的基本过程程序的基本过程1.利用编辑器编写利用编辑器编写 Java源程序源程序 源文件名:主类名源文件名:主类名.java2.利用编译器(利用编译器(javac)将源程序编译成字节码将源程序编译成字节码 字节码文件名:源文件名字节码文件名:源文件名.class3.利用虚拟机(解释器,利用虚拟机(解释器,java)运行运行 运行过程:载入、代码校验、解释执行
44、运行过程:载入、代码校验、解释执行 如:如:java 源程序名源程序名.class50java程序设计创建第一个Java程序1. 用记事本编写源程序:51java程序设计创建第一个Java程序源程序:/* 文件名: FirstApp.java* 功 能: 显示天天好心情!* 编写: 张三* 编写时间: 2004.06.03* 修改: 李四* 修改时间: 2004.08.15*/public class FirstApp public static void main(String args) / 显示天天好心情! System.out.println(天天好心情!); 52java程序设计创建
45、第一个Java程序英文字母的大小写问题Java语言区分大小写,录入时必须严格按这里给出的大小写特别容易弄错的是“System.out.println”,只有System是大写,out和println都是小写例子对比:“FirstApp”和“firstapp”“System.out.println”,“system.out.println”和“System.Out.Println”53java程序设计创建第一个Java程序中文标点符号问题中文的分号和英文的分号很相似,但中文的分号后面有空白,英文的分号后面没有中文的右引号特别容易在输入中文字符串时出现,往往是在输入中文后随手输入了引号的缘故例子对
46、比:中文的分号“;”和英文的分号“;”中文右引号,如:天天好心情!”54java程序设计创建第一个Java程序2. 保存源程序选定一个目录,如C:Java来保存文件在“文件名”一栏敲入“FirstApp.java”,“保存类型”一栏选“所有文件”需要注意的问题不要忘记了文件保存在什么位置文件类型要选“所有文件”,并敲入扩展名,否则可能保存为以txt为后缀的文本文件55java程序设计创建第一个Java程序3. 编译源程序选“程序”“附件”“命令提示符”:闪烁的光标 ,表示在这里输入命令。光标前的 为当前路径。56java程序设计创建第一个Java程序 编译源程序敲入:cd Java,进入 目录
47、下敲入:dir,显示该目录下的所有文件其中“FirstApp.java”就是保存的Java源文件57java程序设计创建第一个Java程序 编译源程序敲入:javac FirstApp.java 几秒钟后,如果提示符 重新出现,没有提示任何信息,说明编译成功了。编译成功之后,将产生一个字节码文件FirstApp.class,它的文件名与类名相同,相当于其它语言程序的可执行文件58java程序设计创建第一个Java程序再次敲入dir命令,可以看到多了一个文件:字节码文件:以.class作为文件后缀59java程序设计创建第一个Java程序4. 执行Java程序敲入命令:java FirstApp
48、运行结果显示如下:祝贺你,你的第一个程序运行成功了!60java程序设计介绍 Eclipse 安装安装Eclipse 启动启动Eclipse 使用使用Eclipse运行运行java程序程序 61java程序设计作业一 1. 1. 下载下载Java SDKJava SDK,并安装。,并安装。2. 2. 使用记事本、写字板等编辑工具编辑下页的第一个使用记事本、写字板等编辑工具编辑下页的第一个 java java应用程序,并在命令提示符方式下编译和运行它。应用程序,并在命令提示符方式下编译和运行它。3. 3. 编写一个应用程序,分行显示自己的姓名和专业。编写一个应用程序,分行显示自己的姓名和专业。
49、62java程序设计第一个第一个JavaJava应用程序应用程序1 / FirstApplication.java 2 /一个简单的Java应用程序,在屏幕上输出一行文本“Hello World!”3 4 public class FirstApplication /定义公共类FirstApplication5 /FirstApplication类开始6 public static void main(String args) /main()方法定义7 /main()方法开始8 System.out.println(Hello World!); /输出字符串Hello World!9 /mai()方法结束10 /FirstApplication类结束63java程序设计