书签 分享 收藏 举报 版权申诉 / 270
上传文档赚钱

类型全套课件·《Java语言程序设计实验指导》1.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3158647
  • 上传时间:2022-07-25
  • 格式:PPT
  • 页数:270
  • 大小:3.86MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《全套课件·《Java语言程序设计实验指导》1.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    Java语言程序设计实验指导 全套 课件 Java 语言程序设计 实验 指导
    资源描述:

    1、第1章 Java语言概述 Java语言是由Sun公司于1995年推出的一种新的编程语言,它是一种跨平台、适合于分布式计算环境的纯面向对象语言。Java语言及其扩展正在逐步成为互联网应用的规范,掀起了自PC机以来的又一次技术革命。本章主要介绍Java语言的起源、特点、简单示例等。1.1 Java1.1 Java语言的起源和发展语言的起源和发展1.2 1.2 面向对象的程序设计面向对象的程序设计1.3 Java1.3 Java语言的特点语言的特点1.4 Java1.4 Java程序的运行程序的运行Return1.1 Java语言的起源和发展1.1.1 1.1.1 几种典型语言的发展历程几种典型语言

    2、的发展历程1.1.2 Java1.1.2 Java语言的起源语言的起源1.1.3 Java1.1.3 Java语言的发展语言的发展Return 一般认为,B语言导致了C语言的诞生、C语言演变出C+语言,而Java语言则明显带有C+语言的特征。本节将对Java语言的起源和发展作简要介绍。1.1.1 几种典型语言的发展历程Return Java总是和C+联系在一起,而C+则是从C语言派生而来的,所以Java语言继承了这两种语言的大部分特性。Java的语法是从C继承的,Java许多面向对象特性都受到C+的影响。事实上,Java中几个自定义的特性都来自于或可以追溯到它的这些前驱语言。略有不同的是,Ja

    3、va语言完全面向对象,从而摒弃了二者的不足之处。Java语言的诞生与过去约30年中计算机语言的不断改进和发展密切相关。基于这些原因,下面我们将简要介绍一下这个发展历程。1 1现代编程语言的诞生:现代编程语言的诞生:C C语言语言 2 2对编程方法的新需要:对编程方法的新需要:C+C+语言语言3 3时机的到来:时机的到来:JavaJava语言的出现语言的出现1.1.2 Java语言的起源Return Java是由James Gosling、Patrick Naughton、Chris Warth、Ed Frank以及Mike Sheridan等人于1991年在Sun Microsystems公司

    4、设计出来的,开发第一个版本花了18个月时间。该语言最初名叫“Oak”,后来发现“Oak”已经是Sun公司另外一种语言的注册商标,于1995年更名为“Java”,即太平洋上一个盛产咖啡的岛屿的名字。从1992 的秋天Oak问世,到1995春天公开发布Java语言,许多人都对Java的设计和改进做出了贡献。1.1.3 Java语言的发展Return 自从于1995年被正式推出之后,Java语言就以其独特的优势迅猛发展,经过短短8、9年时间,成为迄今为止最为优秀的面向对象语言。Java也从当初的一种语言而逐渐形成一种产业,基于Java语言的J2EE架构已成为微软.NET平台的强大竞争对手。当初,Ja

    5、va语言最初的发布不亚于一场革命,但是它并不标志着Java快速革新时代的结束。在Java 1.0发布后不久,Java的设计者就已经制定出了Java 1.1、Java 1.2、Java 1.3、Java 1.4、Java 2、Java 2.1.4版。1.2 面向对象的程序设计1.2.1 1.2.1 面向对象技术的提出面向对象技术的提出1.2.2 1.2.2 面向对象的编程思想面向对象的编程思想1.2.3 1.2.3 面向对象编程的基本原则面向对象编程的基本原则Return 面向对象的编程思想由来已久,但真正意义上的纯面向对象编程语言目前只有Java。本节将结合几种高级语言对面向对象程序设计思想进

    6、行简要介绍。1.2.1 面向对象技术的提出Return 我们知道,所有的计算机程序均由两类元素组成:代码和数据。如何实现这两类元素的有效结合而形成可运行的程序,是多年来程序设计人员所探索的问题。最初,程序的构筑一般围绕“正在发生什么”而编写代码,这种方法被称为面向过程的编程。使用这种方法编写的程序都具有线性执行的特点。面向过程的编程模型可认为是代码作用于数据,像Pascal、C这样的过程式语言采用此模型是相当成功的。然而,使用面向过程的方法对小程序的编写可能是比较有效的,但当程序变得非常大且更为复杂时,就会出现种种问题,直至失去对代码的有效控制。由此对软件工程中的编程方法问题提出了新的要求。为

    7、了管理不断增加的复杂性,另外一种编程方式被提了出来,即面向对象的编程(OOP,Object-Oriented Programming)。这种编程方式围绕“谁将受到影响”进行,即以代码的相关数据为核心点进行程序编写。面向对象的编程着眼于它的数据(即对象)和为此数据严格定义的接口来组织程序,程序实际上是用数据控制对代码的访问。这种方式的最大特点是代码与其相关数据被分离开来进行处理,有利于程序规模的扩大,而程序的可维护性得到增强。1.2.2 面向对象的编程思想Return 前面提到的面向过程程序,它遵循面向过程的问题求解方法,其中心思想是用计算机能够理解的逻辑来描述和表达待解决的问题及其具体的解决流

    8、程。数据结构和算法是面向过程问题求解的核心所在。而面向对象技术则代表了一种全新的程序设计思路,其观察、表述、处理问题的方法,与传统的面向过程的编程方法不同。面向对象的程序设计和问题求解力求符合人们日常自然的思维习惯,尽量分解、降低问题的难度和复杂性,从而提高整个求解过程的可监测性、可控制性和可维护性,以此达到以较小代价和较高效率获得较满意效果之目的。面向对象编程一个实质性的要素是抽象。1.2.3 面向对象编程的基本原则 1 1封装性封装性 封装(Encapsulation)是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误用。一个对象的基本要素包括属性

    9、和作用在属性上的操作(方法或事件)。对象的使用实现了数据抽象,它将一组数据和对这组数据的操作结合成一个内在的整体,不允许外界对这组数据任意进行访问,这里就用到了封装的原理。封装的目的是为了实现数据隐藏和数据保护,为对象提供一个对外操作的接口,外界只能从对象所提供的操作接口来认识和操作该对象。一般说来,面向对象的系统至少需具备三大特性:封装性、继承性、多态性。将封装、继承、多态(包括重载)等面向对象方法应用于程序的开发工具和开发过程中,不仅可以加快开发的速度,还可极大地增强程序的可维护性和可扩展性,提高代码重用率。因此,在面向对象编程过程中需要遵循这三项原则。下面对它们分别作简要介绍。2.继承性

    10、 继承(Inheritance)是一个对象获得另一个对象的属性的过程。继承很重要,因为它支持了层级分类的思想。众所周知,大多数事物均可按层级(即从上到下、从高到低)分类管理。显然,如果不使用层级的概念,在进行描述时,我们就不得不分别定义每个事物的所有属性。使用了继承,一个对象就只需定义使它在所属类中独一无二的属性即可,因为它可以从它的父类那里继承其他所有的通用属性。所以,完全可以这样说,正是继承机制使一个对象成为一个更具通用性的类的一个特定实例成为可能。继承是现实生活中一个非常容易理解的概念。在面向对象的程序设计方法中,引入继承机制的目的在于:其一,避免可公用代码的重复开发,减少数据冗余;其二

    11、,增强数据的一致性,尽量降低模块间的耦合程度。3多态性 多态(Polymorphism)来自于希腊语,表示“多种形态”,即允许一个接口被多个同类动作所使用的特征,具体使用哪个动作与应用场合有关。所谓多态性就是当不同的对象收到相同的消息时,产生不同动作的特性。这里所说的消息可以理解为方法或事件。通俗地讲,多态性就是使用一个名称来定义不同的方法,这些方法执行类似的但又不同的操作,即以相同的接口来访问功能不同的函数,从而实现“一个接口,多种方法”。Return4多态性、封装性与继承性的相互作用多态性、封装性与继承性的相互作用 如果使用得当,在由多态性、封装性和继承性共同组成的编程环境中可以写出比面向

    12、过程模型环境更健壮、扩展性更好的程序。精心设计的类层级结构是实现代码可重用性的基础;封装可以使你在不破坏依赖于类公共接口的代码基础上对程序进行升级迁移;而多态性则有助于编写清晰、易懂、易读、易修改的程序。1.3 Java语言的特点1.3.1 1.3.1 语言特点概述语言特点概述1.3.2 Java1.3.2 Java语言的具体特点语言的具体特点1.3.3 Java1.3.3 Java和和C/C+C/C+的比较的比较Return 作为当前一种被广泛使用的面向对象编程语言,Java具有多方面的特点。如果与其他众多的编程语言作一下比较,会发现这些特点正是Java语言之所以如此风靡的原因所在。虽然Ja

    13、va在某些方面(例如资源耗费)也存在一些不足,但这丝毫不影响Java作为目前最优秀面向对象编程语言的地位。1.3.1 语言特点概述1 1JavaJava的灵魂:字节码的灵魂:字节码 2Java的内涵:丰富的类库的内涵:丰富的类库 Return Java是一种被广泛使用的网络编程语言,这是一种新的计算概念。网络环境下的编程语言最需要解决的是可移植性和安全性问题。以字节方式进行编码,使得程序不受运行平台和环境的限制成为可能。Java语言还提供了丰富的类库,使程序设计人员可以很方便地调用相关类建立起自己的系统。主要表现在:1.3.2 Java语言的具体特点1.1.简单性简单性2.2.面向对象面向对象

    14、3.3.分布性分布性4.4.鲁棒性鲁棒性5.5.可移植性可移植性Return Java作为一种高级程序设计语言,它除具有面向对象、编写简单、脱离机器结构、具有分布性、鲁棒性、可移植性、安全性特点外,并且提供了并发机制,解释执行具有很高的性能。同时,还具有动态性特点。主要表现在:6.6.安全性安全性7.7.结构中立结构中立8.8.高性能高性能9.9.多线程多线程10.10.动态性动态性1.3.3 Java和C/C+的比较Return 对于变量声明、参数传递、操作符、流控制等,Java使用了和C/C+相同的风格,这使得熟悉C/C+的程序员能很方便地进行编程语言切换。同时,Java实现并加强了其简单

    15、、鲁棒、安全等特性,也摒弃了C和C+中许多不合理的地方。主要表现在:1.1.头文件头文件2.2.全局变量全局变量3.3.指针指针4.4.内存管理内存管理5.5.数据类型支持数据类型支持6.6.类型转换类型转换7.7.结构和联合结构和联合8.8.预处理预处理1.4 Java程序的运行1.4.1 Java1.4.1 Java运行环境的安装与配置运行环境的安装与配置1.4.2 1.4.2 第一个第一个JavaJava程序程序1.4.3 1.4.3 两种类型的两种类型的JavaJava程序程序1.4.4 Java1.4.4 Java环境的有关工具环境的有关工具1.4.5 Java1.4.5 Java程

    16、序的编写开发工具程序的编写开发工具Return 由于Java是采用Java虚拟机进行解释执行的编程语言,它需要一定的软件支撑环境才能够运行起来。本节将先介绍Java的运行环境,然后介绍Java程序的编写。1.4.1 Java运行环境的安装与配置Return 编写并运行Java程序,需要Java开发工具包(JDK,Java Development Kit)的支持。因此在编写自己的第一个Java程序前,读者需要先在自己的机器上安装JDK。到目前为止,JDK的发展经历了JDK 1.0、JDK 1.1、JDK 1.2、JDK 1.3、JDK 1.4等几个版本。1.4.2 第一个Java程序 说明:保留

    17、字class来声明一个新的类,其类名为HelloWorldApp,它是一个公共类(public)。整个类定义由大括号对括起来。在该类中,定义了一个main()方法,其中public表示访问权限,指明所有的类都可以使用这一方法;static指明该方法是一个类方法,它可以通过类名直接调用;void则指明main()方法不返回任何值。对于一个应用程序来说,main()方法是必需的,而且必须按照如上的格式来定义。Java解释器在没有生成任何实例的情况下,以main()作为入口来执行程序。Java程序中可以定义多个类,每个类中可以定义多个方法,但是最多只有一个公共类,main()方法也只能有一个,作为程

    18、序的入口。在main()方法定义中的,括号中的String args是传递给main()方法的参数,参数名为args,它是类String的一个实例,参数可以为0个或多个,每个参数用“类名参数名”来指定,多个参数间用逗号分隔。在main()方法的实现中,只有一条语句:System.out.println(Hello World!);它用来实现字符串的输出。“/”后的内容为注释。下面是一个经典的Java入门程序,虽然只有短短几行代码,但其中的内容却很丰富,后面将作具体说明:public class HelloWorldApppublic static void main(String args)/

    19、Output the first sentence:System.out.println(Hello World!);此程序的作用是输出下面一行信息:Hello World!Java程序的编译及运行Return 首先,将其保存到一个名为HelloWorldApp.java的文件中。注注意:意:文件名应该与类名相同,因为Java解释器要求公共类必须放在与其同名的文件中。然后,对它进行编译。C:JavaBookjavac HelloWorldApp.java 编译的结果是生成字节码文件HelloWorldApp.class。最后,使用java命令来运行该字节码文件。C:JavaBookjava H

    20、elloWorldApp 其结果就是在显示器上显示出“Hello World!”这行文字。1.4.3 两种类型的Java程序 在Java中可以编写两类程序:应用程序(applications)和Java Applet(小应用程序)。应用程序是可以在控制台上直接运行的程序,在创建应用程序时,Java与其他高级编程语言没有太大区别,而Java的特色就在于它具有编制小应用程序的功能。小应用程序是可以在Internet中传输并在兼容Java的Web浏览器中运行的应用程序。小应用程序实际上就是小型的Java程序,能像图像文件、声音文件和视频片段那样通过网络动态下载,它与其他文件的重要差别是,小应用程序是

    21、一个智能的程序,能对用户的输入作出反应,并且能动态变化,而不是一遍又一遍地播放同一动画或声音。前面对applications作了介绍,下面我们来介绍一下Java Applet的结构和应用。Java Applet的结构和应用Returnimport java.awt.*;import java.applet.*;public class HelloWorldApplet extends Applet /This is an applet.public void paint(Graphics g)g.drawString(Hello World!,30,30);该程序的功能是:在坐标(30,30)

    22、处输出字符串“Hello World!”。在这个程序中,没有实现main()方法,这是Applet与Application(应用程序)的区别之一。为了运行该程序,首先也应将其保存到一个名为HelloWorldApplet.java的文件中,然后对其进行编译:C:JavaBookjavac HelloWorldApplet.java这样将得到字节码文件HelloWorldApplet.class。由于Applet中没有main()方法作为Java解释器的入口,我们必须编写HTML文件,然后将Applet嵌入其中,接着使用appletviewer来运行,或在支持Java的浏览器上运行。该HTML文

    23、件如下。An Applet 其中,使用标记来启动HelloWorldApplet,code属性指明字节码所在的文件,width和height属性指明applet所占区域范围。最后,我们将此HTML文件存入AppletExp.htm,然后运行:C:JavaBookappletviewer AppExp.htm此时,将弹出一个Applet浏览窗口,在其中指定区域显示“Hello World!”。下面再看一个例子下面再看一个例子1.4.4 Java环境的有关工具Return Java提供了一些常用的语言工具,主要包括:1、java:解释器 2、javac:编译器 3、appletviewer:小应用

    24、程序浏览器 4、javah:头文件生成器 5、javadoc:API文档生成器 6、javap:类文件反汇编器 7、jdb:Java语言调试器 这些文件包括在/java/bin/目录中,并可以在任何目录中运行,前提是设置了运行程序的相应系统路径。1.4.5 Java程序的编写开发工具Return 最后将要说明一下Java程序的编写开发工具。对于一般简单程序的编写,几乎使用任何文本编辑器都可以进行。例如操作系统所带的记事本、写字板等程序。本书中所涉及的Java程序一般使用UltraEdit编写。UltraEdit是一个非常理想的Java程序编写器,它目前的最新版本是Version 10。如果要进

    25、行比较复杂的Java应用系统开发,可使用专门的Java集成开发工具,如JBuilder、Visual J+、Visual Age、JCreator等。其中优秀的开发工具支持与应用服务如BEA WebLogic、IBM WebSphere的集成。具体选用哪种开发工具要视项目的具体情况而定。第2章 Java语言基础 本章将介绍Java语言的基础知识,包括基本语言要素、基本数据类型、变量、数组、运算符等。扎实地掌握这些内容对后续学习是很有必要的。2.1 2.1 预备知识预备知识2.2 2.2 基本语言要素基本语言要素2.3 2.3 基本数据类型基本数据类型2.4 2.4 变量变量2.5 2.5 数组

    26、数组2.6 2.6 运算符运算符Return2.1 预备知识2.1.1 一个简单的Java程序2.1.2 两种控制语句2.1.3 关于程序块Return 在第在第1 1章中,我们已经学会了编写章中,我们已经学会了编写“Hello WorldHello World”这种这种极为简单的极为简单的JavaJava程序。为了便于本章后面内容的叙述,本节程序。为了便于本章后面内容的叙述,本节将再介绍一个稍复杂的将再介绍一个稍复杂的JavaJava程序,使读者在学习程序,使读者在学习JavaJava语言的语言的基础知识前也能够编写简单的基础知识前也能够编写简单的JavaJava程序。程序。2.1.1 一个

    27、简单的Java程序class MyExample public static void main(String args)int num;num=200;System.out.println(This is num:+num);num=num*2;System.out.print(The value of num*2 is:);System.out.println(num);下面是一个简单的Java程序。读者将会看到,这个程序虽然不是很复杂,但其中所包含的内容和功能却很丰富。运行结果:This is num:200The value of num*2 is:400 对大多数的编程语言来说,程序

    28、源代码文件的命名是任意的,只要符合所运行的操作系统平台的要求即可。但这对于Java来说就行不通。在开始进行Java编程前,读者需要知道的第一件事情就是:源文件的名称必须与主类名一致。这一点非常重要。对于上面的例子,源程序文件名就应该是MyExample.java。下面我们将解释其中的原因。在Java中,一个源程序文件被称为一个编译单元(Compilation Unit),它是包含一个或多个类定义的文本文件。Java编译器要求源程序文件使用.java作为扩展名。请注意,文件扩展名的长度是4个字符,因此所用操作系统一定要有支持长文件名的能力。这就意味着DOS和Windows 3.x是不支持Java

    29、文件命名规则的。从上述示例程序中可以看出,程序中定义的类名也是MyExample,这不是巧合。在Java中,所有的代码都必须驻留在类中。按照约定,类名必须与源程序的文件名相同,同时还要确保文件名的大小写字母与类名一样,因为Java是区分大小写的。虽然文件名与类名必须一致的约定显得似乎有些死板,但是这个约定有助于编程人员轻松地维护和组织程序。1关于该程序的命名关于该程序的命名 在第1章中曾经涉及到这方面的内容。要编译并运行示例程序MyExample,首先要运行编译器程序javac,并在命令行上指定源程序文件名,具体格式如下。C:javac MyExample.java 这样,编译器javac产生

    30、一个名为MyExample.class的文件,该文件包含程序的字节码。前面已讨论过,Java字节码中包含的是Java解释程序将要执行的指令码,因此javac的输出结果并不是可以直接运行的代码。要真正运行该程序,必须使用名为java的Java解释器。具体方法是将类名MyExample作为一个命令行参数输入,格式如下:C:java MyExample 如果程序运行正常,将输出如下内容:This is num:200 The value of num*2 is:400 2编译和运行程序编译和运行程序提示:当Java源代码被编译后,每个单独的类都被放入自己的输出文件中,并以类的名字加.class扩展名

    31、为其文件名。这就是为什么Java源程序文件必须与其中包含的类同名的原因源程序文件将与.class文件同名。运行Java解释器,实际上是指定想要解释器运行的类的名字,它会自动搜索包含该名字且带有.class扩展名的文件。如果找到,它将运行包含在该指定类中的代码。Return2.1.2 两种控制语句 1.if控制语句控制语句 Java中的if控制语句与其他编程语言中的IF语句非常相似,并且与C/C+语言中的if语句的语法完全相同。它最简单的形式如下:if(condition)statement;其中:condition是一个布尔表达式。如果其值为真,那么执行语句statement;如果其值为假,则

    32、语句statement将被绕过而不被执行。例如下列语句:if(num 2008)println(You are welcome!);该语句的功能是:如果变量num的值小于2008,那么条件表达式的值为真,方法println()将被调用执行,否则方法println()被绕过而不被执行。尽管在后面的第3章中将详细讨论Java控制语句,这里我们还是先简要介绍两种控制语句,以便能在本章后面的例程中使用它们。class IfSample public static void main(String args)int a,b;a=100;b=200;if(a b)System.out.println(a

    33、now greater than b);下面的程序说明了if控制语句的用法。运行结果:a is less than ba now equal to ba now greater than b 在几乎所有的编程语言中,循环语句都是很重要的组成部分,这对于Java也不例外。事实上,在后面的有关章节中读者将会看到,Java提供了一套功能强大的循环结构,而for循环也许是最通用的。如果读者对C/C+熟悉,会发现Java的for循环和C/C+语言中的for循环操作完全一样。最简单的for循环结构的形式如下:for(initialization;condition;iteration)statement;

    34、其中,循环体的初始化部分(initialization)设置循环变量并为变量赋初始值。条件判断部分(condition)是测试循环控制变量的布尔表达式。若测试结果为真,循环体(statement)继续反复执行;若测试结果为假,循环结束。迭代部分(iteration)的表达式决定循环控制变量在每次循环后是如何改变的。2.for循环语句循环语句class ForTest public static void main(String args)int a;for(a=0;a10;a=a+1)System.out.println(This is a:+a);下面的这个短程序说明了for循环的使用方法。

    35、运行结果如下:This is a:0This is a:1This is a:2This is a:3This is a:4This is a:5This is a:6This is a:7This is a:8This is a:9 在该例子中,a是循环控制变量,它在for的初始化部分被初始化为零。在每次重复迭代(包括第一次)的开始,执行条件测试a 10。如果测试的结果为真,则println()语句被执行,然后执行循环体的迭代部分。此过程将持续进行下去,直到条件测试的结果为假。注意:通常在Java专业程序员编写的程序中,循环体的迭代部分很少会看到象“a=a+1;”的语句。原因是:Java语言

    36、中有一个特殊的增量运算符,即“+”和“-”,它们的作用分别是为对象加1和为对象减1。这样,前述的for循环语句通常写成下列这样:for(a=0;a10;a+)Return2.1.3 关于程序块 在Java语言中,可以将2个或2个以上的语句组成一个语句组,这样的一组语句被称为程序块(Codeblocks)。程序块通过将所属语句放在大括号中来实现。一旦创建了程序块,它就成为一个逻辑单元,可以作为一个单独的语句来使用。例如,程序块可以作为Java中if控制语句和for控制语句的目标。下面我们来看一下如下的if控制语句:if(a b)/begin a block a=b;b=0;/end of blo

    37、ck 本例中,如果a小于b,那么在程序块内的两条语句都将被执行。因此,程序块中的这2条语句组成一个逻辑单元,不能出现一条语句运行,而另一条语句不运行的情况。其中的关键点是如果你需要将两个或多个语句在逻辑上连接起来,就可以将其放入一个程序块中。2.1.3 关于程序块 又例如,下面的程序将for循环作为一个程序块使用:class BlockTest public static void main(String args)int a,b;b=20;/the target of this loop is a blockfor(a=0;a10;a+)System.out.println(This is

    38、a:+a);System.out.println(This is b:+b);b=b-2;在本例中,for循环作为一个程序块使用,而不是一个单独的语句。这样每循环一次,块内的3条语句都要运行一次,此事实当然为程序的执行结果所证实。在本书的后面,读者将会看到程序块的其他性质和用法。勿庸置疑,程序块存在的主要原因是为了创建逻辑上独立的代码单元。Return2.2 基本语言要素2.2.1 标识符2.2.2 Java关键字2.2.3 字面量2.2.4 分隔符2.2.5 注释Return 前面我们通过几个短的程序使读者对Java编程有一个初步的轮廓。在本节里,我们将开始对Java语言元素进行介绍,Jav

    39、a的基本语言要素包括标识符、关键字、字面量、分隔符、注释、数据类型、变量以及运算符等。2.2.1 标识符标识符(Identifier)是赋给类、方法或者变量的名称。一个Java标识符可以由大写/小写字母、数字、下划线(_)、美元符号($)按照一定的顺序组合而成,但不能以数字开头,因为这样容易与数字、常量相混淆。下面是一些合法的标识符:TotalTmp Count x4$myvar this_is_var以下是一些非法的标识符:2thupku high-digNot/ok java¨ its_a+b+c注意:在Java中标识符是严格区分大小写的。例如,MyVal和Myval在Java中是两

    40、个完全不同的标识符。Return2.2.2 Java关键字 关键字是指被系统所保留使用的标识符,这些标识符不能被编程人员用作变量名、类名或方法名。目前,Java语言中保留的关键字如下:abstract assertbooleanbreakbytecasecatch charclassconstcontinue defaultdo doubleelseextendsfalse*finalfinally float forgotoifimplementsimport instanceofintinterfacelongnativenew null*packageprivateprotectedpu

    41、blicreturn shortstaticstrictfp superswitchSynchronized thisthrowthrowstransienttrue*try voidvolatile while 其中,关键字strictfp在Java 1.2版本中被加入,关键字assert则是在Java 1.4版本中新增的。需要说明的是,关键字const和goto虽然被保留,但尚未被当前的Java规范所使用。在上面的关键字中,true、false和null是Java所定义的常值。虽然它们不用作系统标识符,你也不能使用这些词作为类名、方法名、变量名等。Return2.2.3 字面量Return

    42、 在Java中,字面量(literal)是指由文字所表示的取值,也可以称为常量。例如,下面所列的就是一些字面量:100 99.99 AThis is a frog 上面的这些字面量中,第一个表示一个整数,第二个是一个浮点值,第三个是一个字符型的常量,最后一个则是一个字符串值。字面量(常量)能在程序中的任何地方被它所允许的类型直接使用,代表的是所属类型的一个实在值。关于字面量,我们将在介绍完Java语言的数据类型后作进一步的说明。2.2.4 分隔符此外,还有一种“看不见”的分隔符,即空白分隔符(Whitespace)。Java是一种形式自由的语言,这意味着编程人员不需要遵循任何特殊的缩进书写规范

    43、。例如,程序的所有代码可以处在同一行上(一般情况下没人这么做,因为可读性差),也可按照自己喜欢的方式输入和编排程序代码,前提是必须在已经被运算符或分隔符描述的标记之间留出空白分隔符。在Java中,空白分隔符可以是空格符、Tab跳格键,或者是换行符。Return 在Java中,有一些字符被系统当作分隔符使用,最常用的分隔符是分号(;),用来分隔不同的Java语句。下表中给出了Java中常见的分隔符。分隔符分隔符名称名称功能说明功能说明 大括号(花括号)用来定义程序块、类、方法以及局部范围,也用来包括自动初始化的数组的值。中括号(中括号)用来进行数组的声明,也用来表示撤消对数组值的引用。()小括号

    44、(圆括号)在定义和调用方法时用来容纳参数表。在控制语句或强制类型转换组成的表达式中用来表示执行或计算的优先权。;分号用来表示一条语句的结束。,逗号在变量声明中,用于分隔变量表中的各个变量。在for控制语句中,用来将圆括号内的语句连接起来。点号用来将软件包的名字与它的子包或类分隔。也用来将引用变量与变量或方法分隔。2.2.5 注释Return Java中有3种类型的注释(comments)方式,其中前两种注释方式即单行注释和多行注释已作介绍。第三种方式被称为文档注释(Documentation comment),它以“/*”开始,以“*/”标志结束。文档注释提供将程序信息嵌入到程序中的功能。开发

    45、人员可以使用javadoc工具将信息取出,然后转换为HTML文件。这种注释方式提供了编写程序文档的便捷方式。javadoc工具生成的文档十分常见,因为Sun的Java API文档库就是这么生成的。javadoc所识别的标记见教材P28表2-2。标记的使用方法见教材P2931。从表2-2中不难发现,在进行文档注释时,所有的文档标记都以“”标志开始。在一个文档注释中,也可以使用其他的标准HTML标记。然而,有些标记(如标题)是不能使用的,因为它们会破坏由javadoc生成的HTML文档外观属性。同时可以使用文档注释为类、接口、域、构造函数和方法提供文档。在所有这些情况中,文档注释必须紧接在被注释的

    46、项目之前。为变量作注释,可使用see、since、serial、serialField和deprecated文档标记;为类作注释,可使用see、author、since、deprecated和version文档标记;为方法作注释,可使用see、return、param、since、deprecated、throws、serialData和exception作标记。而link和docRoot标记则可以用在任何地方。2.3 基本数据类型2.3.1 Java是强类型语言2.3.2 整数类型2.3.3 浮点类型2.3.4 字符类型2.3.5 布尔类型2.3.6 对字面量的进一步讨论Return 本节将

    47、介绍本节将介绍Java语言中最基本的数据类型。同其他所有的高级语言中最基本的数据类型。同其他所有的高级编程语言一样,编程语言一样,Java支持多种数据类型,它们可以用来声明变量、支持多种数据类型,它们可以用来声明变量、创建数组以及其他更复杂的数据结构。创建数组以及其他更复杂的数据结构。2.3.1 Java是强类型语言 Java的安全和健壮性很大程度上来自于它是一种强类型语言。究其原因:首先,每个变量有类型,每个表达式有类型,而且每种类型都是严格定义的;其次,所有的数值传递,不管是直接的还是通过方法调用经由参数传过去的,都要先进行类型相容性的检查,而有些语言就没有自动强迫进行数据类型相容性的检查

    48、或对冲突的类型进行转换的机制。Java编译器对所有的表达式和参数都要进行类型相容性的检查,以保证类型是兼容的。任何类型的不匹配都将被报告为错误而不是警告。在编译器完成编译以前,错误必须被改正过来。Java语言中定义了8种基本数据类型:字节型(byte)、短整型(short)、整型(int)、长整型(long)、字符型(char)、浮点型(float)、双精度型(double)、布尔型(boolean),这些类型可分为如下几组。1、整数类型:该组包括字节型(byte)、短整型(short)、整型(int)、长整型(long),它们都是有符号整数;2、浮点类型:该组包括浮点型(float)和双精度

    49、型(double),它们代表有小数精度要求的数值;3、字符类型:此组包括字符型(char),它代表字符集的符号,例如字母和数字;4、布尔类型:此组包括布尔型(boolean),它是一种特殊的类型,表示真/假值。Return注意:简单数据类型代表单值,而不是复杂的对象。Java是完全面向对象的,但简单数据类型却不是,它们类似于其他大多数非面向对象语言中的简单数据类型。这样做的原因是出于效率方面的考虑。在面向对象中引入简单数据类型不会对执行效率产生太多的影响。2.3.2 整数类型 Java语言中定义了4种整数数据类型:字节型(byte)、短整型(short)、整型(int)、长整型(long),都

    50、是有符号整数,即正数或是负数。Java不支持仅仅是正的无符号整数。许多其他编程语言,例如C/C+,支持有符号或无符号的整数。然而,Java的设计者感到无符号整数是不必要的,因为他们感到无符号(unsigned)概念主要是被用来指定高位状态,它定义了当int表示一个数字时的符号。而在后面读者将会看到,Java对高位状态的管理是通过一套机制实现(通过增加一个专门的“无符号右移”运算符来管理高位)。这样,就不需要专门定义无符号整数类型了。整数类型的长度不应该被理解为它所占用的存储空间,而应该是该类变量和表达式的行为特性。只要对类型进行了说明,Java的运行环境对该类的大小是没有限制的。事实上,为了提

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:全套课件·《Java语言程序设计实验指导》1.ppt
    链接地址:https://www.163wenku.com/p-3158647.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库