欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    第1章Java语言概述课件.ppt

    • 资源ID:3953097       资源大小:865.50KB        全文页数:550页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第1章Java语言概述课件.ppt

    第1章 Java语言概述,本章主要介绍什么是Java语言,以及Java语言具有哪些特点。在讲解的时候,为了能突出Java语言的特色,详细的分析了其与C/C+语言的区别。另外,本章还为初学者特意安排了一节,针对如何学习Java语言,提出了一些中肯的建议。,1.1 Java的语言特点+,Java是由Sun公司开发出来的一种语言,是一种面向对象的编程语言。其在很多方面与C/C+相似,但在实际编程时又有很多区别。下面通过对他们的比较,了解Java语言的特点。,1.1.1 Java语言与C、C+的区别,首先应该清楚,Java是由C+发展而来的,保留了C+的大部分内容,其编程方式类似于C+。但Java的句法更清晰、规模更小、更易学。Sun公司对多种程序设计语言进行了深入研究,并摒弃了其他语言的不足之处,最终退出了Java。正是这样,Java从根本上解决了C+的固有缺陷,形成了一种新的完全面向对象的语言。Java和C/C+的相似之处多于不同之处,有C基础的读者,学习Java会更容易。相比较而言,Java的编程环境更为简单。因篇幅所限,这里不能完全列出不同之处,仅列出一些比较显著的区别。指针 多重继承数据类型自动内存管理操作符重载预处理功能Java不支持缺省函数参数,而C+支持字符串goto语句类型转换,1.1.2 Java面向对象的特性和多态性,Java是一种跨平台、适合于分布式计算机环境的面向对象编程语言。具体来说,它具有如下特性:简单性、面向对象、分布式、解释性、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。下面将重点介绍Java语言的面向对象、平台无关、分布式、多线程、可靠和安全等特性。,1.1.3 Java的平台无关性,Java的平台无关性是指用Java写的应用程序不用修改,就可以在不同的软硬件平台上运行。平台无关有两种:源代码级和目标代码级。C和C+是具有一定程度的源代码级平台无关。源代码级平台无关表明了用C/C+写的程序无需修改,只需重新编译就可以在不同平台上运行。,1.1.4 Java分布式应用和多线程的特点,Java支持客户机/服务器计算模式,因此它支持这两种分布。对于数据分布,Java提供了一个叫做URL的对象,利用这个对象,可以打开并且访问具有相同URL的对象,访问方式与访问本地文件系统相同。对于操作分布,Java的Applet小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。有关分布式的原理如图1.5所示。,1.1.5 Java程序的可靠性、安全性,本节将详细讲述Java的可靠性和安全性。Java最初的设计目的是电子类消费品,因此要求较高的可靠性。Java虽然源于C+,但它消除了许多C+不可靠的因素,可以防止许多编程错误。它的可靠性和安全性表现在如下几点:,1.1.6 Java小程序和应用程序,用Java可以写两种类型的程序:小程序和应用程序。小程序就是嵌入在网页文档中的Java程序,而应用程序就是在命令行中运行的程序。对Java而言,对小程序的大小和复杂性都没有限制。事实上,Java小程序有些方面比Java应用程序更加强大。目前,由于Internet通讯速度有限,因此大多数小程序规模较小。小程序和应用程序之间的技术差别就在于运行环境。,1.2 Java的不同版本,Java拥有不同的版本,各种版本适合在什么样的场合使用呢?下面将详细介绍这些版本。Java Developers Kits(JDK)Java SDK Micro Edition(J2ME)Java SDK Standard Edition(J2SE)Java SDK Enterprise Edition(J2EE),1.3 如何才能学好Java,如何学习Java,这个问题应该上升到如何学习程序设计这种境界,实际上,学习程序设计也可以说是接受一种编程思想。每一种语言的程序设计思想大同小异,只是一些由语言特性而带来的细微差别。比如Java中的“Interface”,在以前的学习中没有碰到过。以下详细介绍几点:,1.4 什么是面向对象的程序设计,面向对象的程序设计有很多种,除了Java,还有很多编程语言,例如大家熟悉的VB(Visual Basic)、PowerBuilder等。本节将详细介绍面向对象的一些特征和概念。,1.4.1 什么是面向对象,面向对象程序的开发需要考虑多个对象及其相互间的关系。下面实例就是由类Max完成求最大值的功能。面向对象的另外一个好处是实现代码的重复使用,如果其他程序需要最大值的功能,只要通过类Max的对象就可以达到目的。而面向过程的程序设计中,把求最大值的算法都实现在该代码段中,就无法再复用。,1.4.2 模型分析:造房子,面向对象的程序设计其实就像是造房子,每一块砖瓦和木材都可以看成是一个对象,当这个房子被拆掉后,每一块砖瓦还可以拿来重新使用。也就是说,如果需要更改程序,前面设计的有些类,仍然可以被再次使用。,1.4.3 设计面向对象程序的思路,纯粹的面向对象程序设计方法如下。所有的东西都是对象程序是一大堆对象的组合每个对象都有自己的存储空间每个对象都属于某个类。,1.4.4 设计面向对象程序的技巧,下面主要介绍面向对象编程的一些小技巧。要学会如何抽象实际生活中的事物为一个类。学会如何将类中各种各样的概念运用到设计中去。要学会将整个程序模块化。要学尽量减少类与类之间的联系,防止一变都变的现象发生。,1.4.5 面向对象与面向过程设计的不同,本节通过介绍两种语言不同的设计原理,让读者学习如何设计更好的程序。1.过程式设计2.面向对象设计,1.5 常见疑难解答,1.5.1 初学者如何选择Java参考书,答:一个程序员如果没有半米多高的技术书堆,就没有人会认为他是真正的程序员。如何从眼花缭乱的开发丛书中,找到适合自己的书,也是一门学问。书评道听途说不要忘记旧书摊预先阅览,1.5.2.Java应用在哪些方面,答:Java的应用可以简单分为以下几个方面:(1)Java的桌面应用(2)Java Web应用(3)Java企业级应用(4)Java嵌入式应用,第2章 世界上最简单的Java程序,上一章通过与C/C+的比较,详细介绍了Java语言的一些特点。本章将讲述应用程序的一个开发流程,另外,还要讲述开发Java程序所要使用的开发工具,最后会编写一个最简单的Java程序,并通过对程序的具体分析,使读者能够对编写Java代码有一个初步的认识。,2.1 Java程序的开发流程,本节将详细地讲述Java程序开发的一个流程,即如何去开发一个有价值的应用程序。下面是开发一个应用程序的基本流程。,2.2 开发工具的选择,学过程序设计的人知道,使用Basic进行程序设计,可以使用QBasic、Visual Basic等开发工具。使用C语言进行程序设计,可以使用Turbo C、Visual C+、C+Builder等开发工具,这些开发工具集成了编辑器和编译器,是集成开发工具,很方便使用。学习Java程序设计,同样需要方便易用的开发工具。Java的开发工具很多,而且各有优缺点,初学者往往不知道有哪些常用的开发工具,或者由于面临的选择比较多而产生困惑。本文对初学者常用的Java开发工具作一个简单的介绍,从而有助于初学者了解Java常用开发工具,并且针对自身因素做出选择。,2.2.1 开发工具的种类,本节介绍4种常用的开发工具。这四种开发工具各有各的特色,读者可以通过下面的介绍,挑选自己使用方便的开发工具。1.UltraEdit2.Editplus3.Jcreator4.Eclipse针对Java开发,Eclipse与UltraEdit、Editplus、Jcreator IDE比较,Eclipse显然更专业,功能更强大。,2.2.2 开发工具的安装,对于初学者来说,最好是使用UltraEdit,不要使用图形界面的开发工具,因为图形界面的开发工具,有很多都是自动生成的,不利于初学者掌握程序语言的类库,以及整个编程的思路及格式。下面先介绍如何安装UltraEdit开发工具。首先要下载UltraEdit这个软件,下面就是其安装的步骤详解。,2.2.3 开发工具的使用介绍,UltraEdit是一套功能强大的文本编辑器,可以编辑文字、Hex、ASCII码,同时也可以取代记事本。其内建英文单字检查、C+及VB指令突显,可同时编辑多个文件,而且即使开启很大的文件,速度也不会慢。软件附有Html Tag颜色显示、搜寻替换以及无限制的还原功能,一般用户喜欢用其来修改EXE或DLL文件,众多的游戏玩家喜欢用它来修改存盘文件或是可执行文件。,2.3 Java编程环境,编程环境,就是让程序代码能在其中编译、运行的环境。本节重点讲述Java的编程环境,其中包括一些类库的安装和配置。,2.3.1 J2SE的下载和安装,JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment)。它是一堆Java工具和Java基础的类库(rt.jar),不论是什么样的Java应用服务器,实质都是内置了某个版本的JDK,因此掌握JDK是学好Java的第一步。,2.3.2 如何设置ClassPath变量,类路径ClassPath告诉Java应用程序,去哪里查找第三方和自定义类,那些类不是Java扩展或Java平台的一部分。设置 ClassPath清除Classpath更改启动设置,2.3.3 如何设置path变量,先找到安装JDK的目录并复制路径,(如安装在C:Program FilesJavajdk1.6.0bin),然后右击“我的电脑”-“属性”-“高级”-“环境变量”-“系统变量”-Path。单击这一项进行编辑,弹出的对话框变量名应该是Path,变量值是一系列用分号分开的地址,一直拖到最后,加上分号,再把刚才复制的地址粘进来保存就可以。,2.3.4 如何测试环境变量,测试环境变量是否设置成功,可通过在DOS窗口下直接运行java和javac两个命令。C:Documents and SettingAdministratorjavacC:Documents and SettingAdministratorjava如果出现图2.9的现象,说明设置成功了,否则还必须重新设置。下面测试“java”这个命令,测试效果如图2.10所示。,2.4 编写世界上最简单的程序,本节将编写一个最简单的程序,通过这个程序段,给读者讲述编程的一些基础知识。从本节开始将真正地进入到编程世界。,2.4.1 编写程序代码,设计一个最简单的程序,代码如下所示。public class hellopublic static void main(String args)System.out.println(大家好,欢迎进入Java编程世界!);通过使用javac命令来看是否通过编译,如图2.11所示。通过java命令来看看运行结果,如图2.12所示。,2.4.2 分析程序代码,本节分析上一节的程序段,从结构开始介绍。public class hello定义了一个类,类是“public”公共类型的,类名为“hello”,另外,Java中主类名应该和要保存的Java文件名相同,也就是说,这里定义的类名是“hello”,则文件应该保存为“hello.java”。,2.5 常见疑难解答,2.5.1 Javac xxx.java顺利通过,但Java xxx显示“NoClassDefFoundError?”,答:Java命令在一定的范围(ClassPath)内搜索要用的Class文件,但是未能找到。遇到这类问题,首先请确认没有错敲成java xxx.class,其次,检查ClassPath环境变量,如果设置的该变量没有包含“.”(代表当前目录)的,就会遇到这个问题,处理的方法就是在ClassPath环境变量中加入一项。,2.5.2 导致错误“Exception in thread main java.lang.NoSuchMethodError:main”的原因,答:首先,在程序中,每个Java文件有且只能有一个public类,这个类的类名必须和文件名的大小写完全一样;其次,在要运行的类中,有且只能有一个“public static void main(String args)”方法,这个方法就是主运行程序。,第3章 Java语言中的数据与运算符,本章主要介绍编程语言最基础的部分:数据和运算符。这是所有编程语言都必须掌握的基础知识,也是整个程序代码不可缺少的重要部分。本章将通过大量的程序代码,来讲述如何操作这些数据和运算符。熟练的掌握此章,对于Java开发起着非常重要的作用,并且还对以后学习其他开发语言,有着重要的帮助。,3.1 数制,在介绍数据之前,先了解数制的概念。数制可以说是纯粹数学上的内容,只不过在计算机语言开发中,使用的比较频繁,下面将详细讲述数制的有关知识。,3.1.1 基本概念,在使用电脑时,会遇到数值、文字、图像、声音等信息,电脑是如何识别这些数据信息的呢?首先,看计算机底层硬件是如何识别数据的。计算机底层硬件只能识别“0”和“1”,这种只有“0”和“1”两个数字符号的组合被称为二进制。例如计算机要处理数字“128”,那么计算机会将其转化成二进制“1000000”。一个这么简单的数字,要用这么长的数字符号来代替,在现实生活中稍显麻烦,所以后来又引进了十六进制、八进制。实际开发中使用最多的是十进制,后面会介绍各个数制的特征和使用。,3.1.2 Java语言中的数制表现形式,数制一般包括二进制、八进制、十进制和十六进制。1二进制2八进制3十六进制4十进制,3.2 数据类型,Java语言是一个强调数据类型的语言,在声明任何变量时,必须将该变量定义为一种数据类型。Java中的数据类型包括:基本数据类型和对象类型。对象类型不属于本章所讲述的内容,本节主要介绍数据的基本类型。Java程序中,总共有8大基本类型,其中4种整型、1种字符型、2种浮点型、1种布尔型,除了这几种基本类型外,其他都属于对象类型的数据。,3.2.1 整型,什么是整型呢?从字面上就可以知道,整型就是整数类型,也就是没有小数点的数字,可以是正数也可以是负数。在Java中,总共的整型主要有4种:字节型(Byte)、整型(Int)、短整型(Short)、长整型(Long)。1字节型2短整型3Int型4长整型,3.2.2 字符型,字符型数据是平时程序设计中,使用比较频繁的类型,其占两个字节。特别注意的是它必须以单引号表示,例如A表示一个字符,这个字符就是A。“A”表示一个字符串,虽然其只有一个字符,但因为使用双引号,所以它仍然表示字符串,而不是字符。,3.2.3 浮点型,浮点型数据表示有小数部分的数字,总共有两种类型组成:单精度浮点型(float)和双精度浮点型(double)。1单精度浮点型数据2双精度浮点型数据,3.2.4 布尔型,布尔型数据其实很简单,如果有人问:去不去麦当劳,可以说不去。如果有人问去不去看电影,可以说去。这里就隐藏着布尔型的数据,布尔型数据就是“是”与“否”。在程序中使用“真”和“假”来代替“是”与“否”,即“true”和“false”。仔细观察下列程序代码:,3.3 变量,前面的代码使用了很多变量,那究竟变量是什么呢?本节将介绍变量的基本概念,以及如何操作变量。,3.3.1 变量的声明,变量就是在程序的运行中可以变化的量,变量是程序设计中一个非常重要,同时也是非常关键的概念。在Java程序设计中,每个声明的变量都必须分配一个类型。声明一个变量时,应该先声明变量的类型,随后再声明变量的名字。,3.3.2 变量的含义,在程序设计中,经常会听到变量这个名词,到底什么是变量呢?它又有什么意义呢?在程序运行过程中,空间内的值是变化的,这个内存空间就称为变量。为了操作方便,给这个空间取了个名字,称为变量名,内存空间内的值就是变量值。所以,申请了内存空间,变量不一定有值,要想变量有值,就必须要放入值。,3.3.3 变量的分类,变量的分类方式可以说多种多样,不可能单纯的将变量划分为几个类,下面将以不同的分类方式来讨论变量的分类问题。1从作用范围来分2从类型来分3以所属范围分,3.4 如何初始化,在C、C+或者VB、PowerBuilder等语言中,都会提到变量的初始化,有关对象类型的变量初始化,将在后面的章节详细讲述,这里将把基本类型变量的初始化作为本节的主要篇幅。,3.5 常量,常量就是从程序开始运行到结束都不变的量。在Java程序设计中,使用关键字“final”来声明一个常量,例如下面的程序代码。,3.6 运算符,运算符就是在用变量或常量进行运算时,经常需要用到的符号,目前常用的总共有十种:算术运算符、关系运算符、逻辑运算符、位运算符、移位运算符、赋值运算符、三元运算符、逗号运算符、字符串运算符、转型运算符。下面将会对每种运算符结合实例作详细的讲述。,3.6.1 算术运算符,从小学开始就学过“加”、“减”、“乘”、“除”、“余”,其实这就是Java中的算术运算符。下面来看一种情况,当一个浮点数加上一个整型数据,其结果是什么类型的数据?这涉及到了数字精度问题,数字精度就是不同类型的数据之间进行运算,为了使结果更加精确,则会由系统,将其结果自动转化为精度更高的数据类型。以上所述的定义有点复杂,通过下面的例子进行说明。,3.6.2 关系运算符,关系运算符就是指两个操作数之间的关系,它包括了:“”、“=”、“=”、“=”、“!=”。算术运算符的结果都是数字,而关系运算符的结果则是布尔型的数据,这一点一定要注意。,3.6.3 逻辑运算符,逻辑运算符共有三种,即“非”、“和”、“或”。逻辑运算符一般与关系运算符结合起来使用,下面将详细的介绍这三个逻辑运算符。1NOT运算符2AND运算符3OR运算符,3.6.4 位运算符,位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。1与运算符2或运算符3非运算符4异或运算符,3.6.5 移位运算符,移位运算符也针对二进制的“位”,它主要包括:左移位运算符()、带符号的右移位运算符()。1左移运算符2右移运算符3带符号的右移运算符,3.6.6 赋值运算符,赋值就是将数值赋给变量,而这个赋值运算符就充当了这个赋值的任务,其实最简单的赋值运算符,就是“”。当然除了“”外,还有很多其他的赋值运算符。有“+=”、“=”、“*=”、“/=”、“%=”、“=”、“=”、“=”、“&=”、“|=”、“=”。下面有一个简单的例子。,3.6.7 三元运算符,三元运算符一般用的很少,因为它在程序段中的可读性很差,所以笔者建议不要经常使用三元运算符,但很少使用并不代表不使用,所以还是要掌握好它的用法,三元运算符的表达形式如下:布尔表达式?值0:值1,3.6.8 逗号运算符,在Java程序设计中,逗号运算符一般是用来将几个条件彼此分开,例如数组中的每个元素都是使用逗号与其他元素分开的。,3.6.9 转型运算符,转型运算符的用处是将一种类型的对象或数据,经过强制转换而转变为另一种类型的数据。它的格式是在需要转型的数据前加上“()”,然后在括号内加入需要转化的数据类型。有的数据经过转型运算后,精度会丢失,而有的会更加精确,,3.6.10 运算符的优先级别,当多个运算符出现在一个表达式中,谁先谁后呢?这就涉及到运算符的优先级别的问题。在一个多运算符的表达式中,运算符优先级不同会导致最后得出的结果差别甚大,例如,(1+3)(3+2)*2,这个表达式如果按加号最优先计算,答案就是18,如果按照乘号最优先,答案则是14。,3.7 常见疑难问题解答,3.7.1 如何将十进制转换成二进制,答:如何将十进制转换成二进制?作者有一个方法就是先熟练记忆2的n次方的结果,一般来说记到2的7次方就可以了。,3.7.2 转型运算符会引起精度问题,为什么还要使用它,答:其实不但基本类型的数据会使用转型运算符,对象类型的数据也要使用转型运算符。在使用基本数据转型时,一般都要从低精度往高精度转,但是在某些特定的情况下,或者说在用户特殊要求下,会从高精度转向低精度。例如有的数字希望能够去掉小数位,那么就只能从高精度往低精度转型。,第4章 程序设计中的流程控制,什么是流程控制呢?流程就是做一件事情的顺序,或者说是次序。在程序设计中,流程就是要完成一个功能,而流程控制则是指如何在程序设计中,控制完成某种功能的次序。本章将通过大量的实例,为读者讲述如何在程序中设计好流程控制。,4.1 编程风格,本章开始接触到编写程序代码,有一点必须强调,那就是编程风格的问题,虽然其不影响程序代码段的运行,但对于程序的可读性起着重要的作用。自己编出的程序要让别人看懂,首先在排版方面要非常注意,下面将探讨编程风格的问题。每个人的编程风格、每个软件开发公司的编程风格都不一样。一个人编写的程序代码,就应该能让别人看懂,甚至是过了很长时间,自己也要看的懂,否则这个程序就成了一个死程序。编程风格是指编程时的格式,让程序看上去就很有层次感。下面通过一些例子,说明编程风格的重要性,先来看第一个例子。,4.2 条件语句,在现实生活中,经常听人说:如果某人发财了,某人会做什么。其实这就是程序设计中所说的条件语句。像“如果.”、“就.”,“否则”,当然这只是很简单的条件语句,在真正的程序设计中,使用的条件语句要比这复杂的多。,4.2.1 条件语句的种类,在程序设计中,条件语句的标准格式如下:,4.2.2 如何使用好条件语句,使用好条件语句需要注意以下几点:(1)应该绘制流程图,使编程时思路更加清晰。(2)编程时,在最简单形式的条件语句中,可以不使用大括号,因为它不会产生混淆,但建议无论是哪种形式的条件语句,都应该使用大括号。,4.3 循环语句,循环语句在程序设计中有什么作用呢?下面先看一段简单的程序段,再来看看使用循环语句编写程序的好处在哪里。,4.3.1 For语句,For语句的基本结构如下所示。For(初始化表达式;判断表达式;递增(递减)表达式)执行语句,4.3.2 while循环,在英文中“while”这个词的意思是“当”,而在Java程序设计中,也可以将其理解为“当”,其语法结构是:,4.3.3 do/while语句,在学习do/while语句之前,先清楚while语句是如何工作的。while语句是先进行条件判断,再执行大括号内的循环体。do/while语句与while语句不同的是,它先执行大括号内的循环体,再判断条件,如果条件不满足,下次不在执行循环体。也就是说,在判断条件之前,就已经执行大括号内的循环体。,4.4 中断与继续,在实际编程中,可能会出现中断某个程序,或从一个程序点开始,继续执行程序的特殊情况。对于这种特殊情况,Java会使用中断与继续功能来解决。,4.4.1 中断控制语句,在Java程序开发中,使用关键字“break”来表示中断控制。中断控制语句用来强行退出程序的循环体部分。为了能熟悉中断控制语句,下面看一个简单的程序段,通过这个例子,可以看到中断控制语句在实际开发中的用处。,4.4.2 继续语句,在Java程序设计中,继续语句使用关键字“continue”表示。继续语句同中断语句一样,用在循环体中,继续语句是用于终止当前循环体,返回到循环开始处,接着开始新的循环。下面先看一个有关继续语句的实例。,4.5 分支语句,在讲述条件判断语句时,曾经提到当判断条件过多时,可以使用分支语句来编写。分支语句的基本机构是:,4.6 返回语句,返回语句就是在执行程序的过程中,跳转到另一个程序。一般返回语句用在子程序或程序中的函数方法中。返回语句使用关键字“return”来表示。下面通过一个简单实例,了解返回语句的用法。,4.7 常见疑难解答,4.7.1 普通循环是使用For语句还是while语句,答:根据情况不同而定,For循环语句主要针对有限循环而言,也就是说当循环有上限的时候,一般使用For循环。while循环语句则针对那些无限循环的代码而言,当循环没有明确上限,上限只是根据程序中的条件而定的。,4.7.2 一般的程序可否用分支语句来代替条件语句,答:这个要视具体情况而定,如果条件在三重之内,最好使用条件语句。如果超过了三重,最好使用分支语句。,第5章 数组,什么是数组?数组在实际程序中起到什么作用?数组用来存储数据,类似数据的缓存,是一组有序列的数据集合。通过本章的学习,可以了解数组如何进行数据存储,并且结合编程实例,掌握数组的设计和操作。,5.1 数组概念的引入,本节将介绍数组的一些基本概念。这些概念有助于在以后的编程过程中,更好的使用数组。,5.1.1 实例的引入,走进一家运动器材店,会看到很多的体育运动器材,有篮球、排球、足球、羽毛球、乒乓球、高尔夫、滑板、健身器材等等。如果要为这家店作一个数据库系统,首先要建立一个类似于集合的表格,如下所示。,5.1.2 数组的概念,数组是具有相同数据类型的数据的集合,例如上一小节中提到的运动器材集合。相同的数据类型,意味着数组中每个数据都是同一类型数据,或者属于基本数据类型中相同类型的数据,或者属于对象类型中相同类型的数据。在生活中,一个班级的学生、一个学校的所有人、一个汽车厂的所有汽车等等,这些都可以形成一个数组。,5.1.3 用实例说明数组的用处,本节重点是说明数组的优点,可能会遇到后面小节讲述的内容,先不要理会。下面来看一个有关数组的简单实例。一个班上有10个同学,分别是王垒、赵敏、宋江、刘户、孙洁、王浩、周杰、钱平、朱汉、马超。前面5个同学是男生,后面5个同学是女生。下面分析如何用数组来表示。,5.2 基本数据类型的数组,上面一节中使用实例对数组的用处作了分析,此节将针对基本数据类型的数组,讲述其声明方法和使用方法。本节将会利用大量编程实例,来加强对数组用法的理解。,5.2.1 基本类型数组的声明,使用一个数据时,必须要对其进行声明,这个道理对于数组来说也一样,数组在使用之前也必须先声明。先看下面的代码,是如何声明一个变量的。Int a;仔细分析一下:int是指变量的数据类型,a是指变量名,由变量的声明可以联系到数组的声明。,5.2.2 基本类型数组的初始化,如何对基本类型的数组进行初始化呢?同样,可以先从变量的初始化开始。一个变量的初始化工作,其实就是一个变量的赋值工作,例如下面的变量初始化实例。int a=3;以上就是一个变量初始化的例子,那么数组的初始化是什么样子?下面看一个有关数组初始化的实例。Int a=new int1,2,3,4,5;,5.3 由实例引出不同数组种类及其使用,本节主要使用实例让读者能更加熟悉数组的使用。通过本节的学习,总结一些编程中所使用的编程思路。编程最重要的不是如何编写代码,使用哪种控制流程?最主要的是编程的思路,编程思路决定着这个程序代码的好与坏。,5.3.1 由实例引出一维数组及其使用,先来看一个很简单的实例。有两个数组a、b,输出它们中的各个数据,并且输出它们的长度。,5.3.2 由实例引出二维数组及其使用,针对二维数组,先看看下面的有关二维数组的例子:创建一个字符型二维数组,并根据执行结果为各元素赋值,然后输出各元素。,5.4 数组的综合实例,设计一个程序,有两个整型数组:a和b。a数组中有5个元素,b数组中有5个元素。现在要求:(1)分别输出两个数组中的各个元素及长度。(2)有一个数组c,它的元素就是a数组和b数组中一一对应的元素的乘积,并且输出其长度。(3)有一个数组d,它的元素是前面三个数组中一一对应的元素满足的表达式:ai*ci-bi。,5.5 常见疑难解答,5.5.1 声明数组需要注意什么,答:声明数组时,一定要考虑数组的最大容量,防止容量不够的现象。数组一旦被声明,它的容量就固定了,不容改变。如果想在运行程序时改变容量,就需要用到数组列表。数组列表不属于本章的内容,在数据结构一部分会详细讲述。,5.5.2 数组在平时的程序代码中使用是否频繁,答:其实数组有一个缺点,就是一旦声明,就不能改变容量,这个也是其使用频率不高的原因。一般存储数据会使用数组列表或Vector,这两种数据结构来存储数据。,第6章 字符串的处理,本章将通过实例,重点讲述字符串类和字符串类中各种各样的方法。字符串属于类,虽然在本章之前还未讲解类,但本章的关键主要学习如何处理字符串。字符串是在程序开发中,随时随地都能用到的对象型数据,处理好字符串数据,对于程序开发来说,是至关重要的。在程序不同的角落都会存在字符串处理的身影,例如,登录窗口的用户名和密码等等。,6.1 字符串的基本概念,提到字符串,读者一定不会陌生。在前面章节中,很多实例程序都有字符串的出现。先来看看下面的这段程序代码段。在两个双引号之间的数据就是字符串。,6.2 字符串处理的类库种类,字符串处理类库使用最多的是两种:“String”类和“StringBuffer”类。下面将详细讲述这两个类如何使用。,6.2.1 字符串的赋值,字符串类是处理字符串的类。“String”字符串与上一章学过的数组有一个共同点。就是它们被初始化后,长度是不变的,并且内容也不变。如果要改变它的值,就会产生一个新的字符串,如下所示:,6.2.2 字符串的处理类-String,字符串的声明非常简单,具体声明方法如下所示:字符串类型 字符串名字符串内容,6.2.3 字符串处理的方法,字符串类拥有很多针对字符串操作的方法。在这里主要讲述:串连接、提取子串、从字符串中分解字符、得到字符串的长度、测试字符串是否相等、查找特定字符串、从基本类型转换成字符串等。1串连接2提取子字符串3从字符串中分解字符4得到字符串的长度5测试字符串是否相等6查找特定子串7从基本类型转换成字符串8toString方法,6.2.4 缓冲字符串处理类StringBuffer,前面介绍过,“String”类一旦声明初始化后,是固定不变的。如果要改变它,就必须重新申请空间,重新声明和初始化。Java类库中有一个类,可以解决上面的问题,那就是缓冲字符串类“StringBuffer”类。当创建StringBuffer类对象时,系统为对象分配的内存会自动扩展,以容纳新增的内容。针对“StringBuffer”类创建对象时的构造器有两个,下面将详细的讲述。,6.2.5 缓冲字符串StringBuffer类的构造器,在这一小节中,将学习缓冲字符串类的构造器知识。通过学习对比StringBuffer类和String类的不同点和相同点。1默认的构造器2设定容量大小的构造器,6.2.6 缓冲字符串的处理,下面将学习StringBuffer类的一些主要方法。其实这些方法有很多与String类的方法很相似,通过学习可以比较。1初始化字符串2取字符串的单个字符3单个字符串赋值4指定位置插入字符串5返回字符串的子串6倒置字符串的内容,6.2.7 缓冲字符串类的特点,字符串是绝大多数应用程序经常使用、且不可缺少的对象之一。由于缓冲字符串类有着比字符串类更加宽裕的空间,所以缓冲字符串可以用来处理一些动态字符串,而一般字符串类只能处理静态的不可变化的字符串。,6.3 用实例演示如何处理字符串,下面看一个实例,通过这个实例可以更熟练的处理字符串数据。有一个字符串处理要求,请看下面的要求:有两个字节数组:I,a,m,a,b,o,y,以及h,e,i,s,a,b,o,y,请将它们以字符串形式输出。用缓冲字符串类来输出上面的字符串。,6.4 如何格式化输出,程序员经常使用“System.out.println(x)”方法向输出台输出数据,这条命令会按照x的数据类型,所允许的非零数字位的最大数字打印。下面通过例子进行演示。,6.5 常见疑难解答,6.5.1“equals”和“”的区别,答:如果操作两边都是对象句柄,就比较两个句柄是否指向同一个对象。如果两边是基本类型,比较的就是值。“equals”比较的是两个对象的内容,如果不重载“equals”方法,自动调用object的“equalf”方法,则和“”样。在JDK中像“String”、“Integer”,默认重载了“equal”,则比较的是对象的内容。在实际编程中,建议读者使用“equals”方法。,6.5.2 String类为何被定义成final约束,答:主要是考虑“效率”和“安全性”的缘故。若“String”允许被继承,则其频繁的被使用,可能会降低程序的性能,所以“String”被定义成“final”。,6.5.3 char类型转换成int类型,整数int转换成字符串,第7章 类,什么是类?类有什么用处?为什么它会是面向对象编程的一个典型特征?带着这些问题,本章将会结合大量的实例为读者一一讲解。类是面向对象编程中最基本、也是最重要的特征之一。从本章开始,将介绍如何进行面向对象的程序开发,以及程序开发的过程中,所需要具备的重要思想是什么?编程思想是很多学习编程的人,学习时间长却学不好的一个主要原因。,7.1 JDK 5和JDK 6特性,本节介绍什么是JDK,以及Java开发工具集中两个不同的版本。本节的讲解比较简单,希望有兴趣的读者查看其他的相关书籍。,7.1.1 什么是JDK,JDK的意思是Java开发工具包(Java Development Kit,JDK),JDK是Sun公司免费提供的Java语言工具,是Java应用程序开发的基础。通常第三方开发工具“JBuilder9.0”、“IBM VisualAge for Java”等都是基于JDK进行开发。,7.1.2 JDK 5的特点,JDK 5其实就是JDK1.5,JDK1.5(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,包括泛型、for-else循环、自动装包/拆包、枚举、可变参数、静态导入。使用这些特性有助于编写更加清晰、精悍、安全的代码。下面简单介绍下这些新特性。泛型(Generic)自动装包/拆包(Autoboxing/unboxing)枚举(Enums)可变参数(Varargs)静态导入(Static Imports),7.1.3 JDK 6的特点,浏览了JDK6的新特性,感觉“Compiler API”的应用有很大空间。JDK6提供对代码的编译功能,可以实现代码编辑、编译及加载运行,可以在系统运行中动态配置和扩展用户自定义的功能,甚至可以把Java语句作为脚本,内嵌到原有系统中扩充功能集。,7.1.4 JDK 5与JDK 6的比较,2006年底,Sun公司发布了Java Standard Edition 6(Java SE 6)的最终正式版,代号“Mustang(野马)”,跟“Tiger(Java SE 5)”相比,“Mustang”在性能方面有了不错的提升。从与“Tiger”在API类库的比较来讲,有了大幅度加强,虽然“Mustang”在API库方面的新特性显得不太多,但其提供了许多实用和方便的功能:在脚本、Web Service、XML、编译器API数据库、JMX、网络方面都有不错的新特性和功能加强。随着不断的发展和进步,相信JDK 6会有不错的表现。,7.2 用比较法阐述类的概念,现实生活中的有一个例子。造房子的砖头有红色的砖、有方砖、有圆砖,此时,在现实生活中各种各样的砖头都可以称作是对象。红色的砖可以称为一个对象,圆砖可以称为一个对象,它们有共同点,但也有不同的方面,这些不同的方面使得它们不可能是同一个对象。然而,砖头就是所有种类的总称,所有的砖都是由它派生而来,所以这个砖可以称为是一个类。类就是模板,也可以说类其实就是创建对象的基地,它能产生很多不同的对象。再举个例,汽车就是一个类,而卡车、轿车等等都是从汽车这个类中派生出来的,也就是说,这些都是属于汽车这个类。其实类是个很灵活的概念,也可以将轿车作为一个类,在轿车这个类中,再创建各种品牌的轿车对象出来,有桑塔纳、红旗、奔驰,而每种轿车都是一个对象。类与对象的关系,有点像一个母亲与子女的关系。,7.3 Java中已有的类,目前,Java中已经存在了很多由前辈开发出来的类,

    注意事项

    本文(第1章Java语言概述课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开