描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302500667丛书名: 21世纪高等学校规划教材·计算机科学与技术
本书既适用于高等学校师生,也可供报考计算机等级考试或Java语言自学者参考,还可作为实验指导教材。
第1章 Java概述及开发环境搭建 1
1.1 基本知识提要 1
1.1.1 知识结构图 1
1.1.2 重点知识整理 1
1.2 典型题解析 4
1.3 测试习题与参考答案 5
1.3.1 测试习题 5
1.3.2 参考答案 7
1.4 实训1 Java开发环境搭建练习 8
1.4.1 JDK的下载与安装 8
1.4.2 下载并安装Eclispe 10
1.5 拓展训练 13
第2章 Java语言基础 14
2.1 基本知识提要 14
2.1.1 知识结构图 14
2.1.2 重点知识整理 15
2.2 典型题解析 22
2.3 测试习题与参考答案 24
2.3.1 测试习题 24
2.3.2 参考答案 32
2.4 实训2 Java语言基础 38
2.4.1 Java基本数据类型、运算符、表达式及数组的使用方法 38
2.4.2 基本控制结构 42
2.5 拓展训练 45
第3章 类与对象 47
3.1 基本知识提要 47
3.1.1 知识结构图 47
3.1.2 重点知识整理 47
3.2 典型题解析 53
3.3 测试习题与参考答案 59
3.3.1 测试习题 59
3.3.2 参考答案 70
3.4 实训3 面向对象编程练习 74
3.4.1 类 74
3.4.2 对象的创建与使用 76
3.4.3 类的继承 79
3.4.4 访问控制修饰符 80
3.4.5 非访问控制修饰符 83
3.4.6 包 85
3.4.7 接口 87
3.5 拓展训练 88
第4章 深入理解Java语言 90
4.1 基本知识提要 90
4.1.1 知识结构图 90
4.1.2 重点知识整理 90
4.2 典型题解析 94
4.3 测试习题与参考答案 102
4.3.1 测试习题 102
4.3.2 参考答案 109
4.4 实训4 深入理解Java语言 113
4.4.1 Object类 113
4.4.2 变量及其传递 114
4.4.3 多态 116
4.4.4 对象构造与初始化 118
4.4.5 内部类与匿名类 119
4.4.6 Java的反射机制 120
4.4.7 lambda表达式 122
4.5 拓展训练 123
第5章 异常处理 124
5.1 基本知识提要 124
5.1.1 知识结构图 124
5.1.2 重点知识整理 124
5.2 典型题解析 128
5.3 测试习题与参考答案 132
5.3.1 测试习题 132
5.3.2 参考答案 138
5.4 实训5 异常处理编程练习 143
5.5 拓展训练 147
第6章 常用类与工具类 149
6.1 基本知识提要 149
6.1.1 知识结构图 149
6.1.2 重点知识整理 150
6.2 典型题解析 160
6.3 测试习题与参考答案 161
6.3.1 测试习题 161
6.3.2 参考答案 164
6.4 实训6 常用类与工具类练习 168
6.4.1 常用类和包装类 168
6.4.2 字符串操作 169
6.4.3 List接口及ArrayList类、Vector类 172
6.4.4 Set接口及HashSet类、TreeSet类 175
6.4.5 Map接口 178
6.4.6 栈与队列 179
6.4.7 Arrays类和Collections类 181
6.5 拓展训练 182
第7章 Java多线程程序 183
7.1 基本知识提要 183
7.1.1 知识结构图 183
7.1.2 重点知识整理 183
7.2 典型题解析 191
7.3 测试习题与参考答案 194
7.3.1 测试习题 194
7.3.2 参考答案 198
7.4 实训7 Java多线程程序 202
7.5 拓展训练 204
第8章 输入输出与文件的读写 205
8.1 基本知识提要 205
8.1.1 知识结构图 205
8.1.2 重点知识整理 206
8.2 典型题解析 209
8.3 测试习题与参考答案 211
8.3.1 测试习题 211
8.3.2 参考答案 217
8.4 实训8 面向对象编程练习 224
8.4.1 字符流 224
8.4.2 数据流 225
8.4.3 文件操作类 226
8.4.4 压缩文件的读取 227
8.5 拓展训练 228
第9章 图形用户界面 231
9.1 基本知识提要 231
9.1.1 知识结构图 231
9.1.2 重点知识整理 231
9.2 典型题解析 235
9.3 测试习题与参考答案 238
9.3.1 测试习题 238
9.3.2 参考答案 243
9.4 实训9 图形用户界面设计 248
9.4.1 Swing组件的使用 248
9.4.2 布局管理器 250
9.4.3 事件处理 251
9.4.4 Swing高级组件的应用(表格) 254
9.4.5 菜单 256
9.4.6 可视化编程 258
9.5 拓展训练 263
第10章 图形图像处理 264
10.1 基本知识提要 264
10.1.1 知识结构图 264
10.1.2 重点知识整理 264
10.2 典型题解析 271
10.3 测试习题与参考答案 273
10.3.1 测试习题 273
10.3.2 参考答案 273
10.4 实训10 图形图像处理 274
10.5 拓展训练 276
第11章 多媒体、网络与数据库编程 278
11.1 基本知识提要 278
11.1.1 知识结构图 278
11.1.2 重点知识整理 278
11.2 典型题解析 292
11.3 测试习题与参考答案 298
11.3.1 测试习题 298
11.3.2 参考答案 302
11.4 实训11 多媒体、网络与数据库编程 309
11.4.1 Java多媒体编程 309
11.4.2 Java网络编程 313
11.4.3 Java数据库编程 315
11.5 拓展训练 321
参考文献 322
本书是黑龙江省教育科学“十二五”规划2015年度两个重点项目(项目名称:应用型本科院校慕课的开发与“慕课 翻转课堂”的应用研究;项目编号:GJB1215030。项目名称:“互联网 ”背景下本科院校计算机基础教育教学方式改革研究;项目编号:GJB1215032)的部分研究成果。
本书针对“Java程序设计”课程的教学需要而编写,与李凌霞、侯占军、刘明刚编写的《Java程序设计教程》相配套。按照课程内容的讲授顺序,阐述了Java开发环境的搭建、Java语言基础、面向对象程序设计基础、异常处理、常用类与工具类、多线程、输入输出与文件的读写、图形用户界面、图形图像处理、网络与数据库编程等内容。在本书的编写过程中力求引导学生掌握Java语言的基础知识、基本概念及基本原理,以达到培养学生编程能力的目标;通过丰富翔实的典型例子,帮助初学者理解多线程、常用API、集合、IO流、GUI、网络编程及数据库编程等面向对象的抽象概念,并设计了几百道习题与实训题供学生练习。
全书共11章,每章有基本知识提要、典型题解析、测试习题与参考答案、实训及拓展训练5部分。“基本知识提要”部分给出了本章的知识结构图及重点知识整理;“典型题解析”部分设计了经典题型,并进行了深入透彻的分析,给出了详细的解题步骤;“测试习题与参考答案”部分设计了填空、选择、判断、程序阅读题和编程题,并给出了参考答案;在“实训”部分,设计了内容丰富、实用性强的编程练习题目,并给出了完整的Java程序;“拓展训练”部分针对各章知识点进一步给出了练习题。全书程序都在Eclipse平台上调试成功。学生通过阅读与实践,可掌握面向对象编程方法。
本书由李凌霞任主编,侯占军、刘明刚、奚望园任副主编。各章编写分工如下:第1、6章由哈尔滨金融学院奚望园编写;第3、4、9章由哈尔滨金融学院李凌霞编写;第5、8章由哈尔滨金融学院刘明刚编写;第2、7、10、11章由哈尔滨金融学院侯占军编写。全书由李凌霞统稿,齐景嘉主审。
参加本书编写的教师均从事“Java程序设计”课程教学多年,有丰富的教学经验。在编写过程中,力求做到严谨细致、精益求精,但由于编者水平有限,书中难免有疏漏之处,敬请广大读者指正。
作 者
2017年12月
3.1 基本知识提要
3.1.1 知识结构图
3.1.2 重点知识整理
1. 类
类是Java语言程序设计的基本单位,Java程序是由类构成的,编写Java程序主要就是定义各种类。类定义了同一类型对象的结构,定义一个类相当于定义了一个新的“数据类型”,用来规定具体对象的数据域和操作数据的方法。类定义的语法格式为:
[] class [extends] [implements] {
[成员变量声明]
[构造方法定义]
[成员方法定义] //类体}
1)成员变量
成员变量用来存储对象的属性信息。成员变量可以是Java中的任何一种数据类型,包括基本类型和引用类型。成员变量的作用范围是在整个类体内都有效,其有效性与它在类体中定义的先后位置无关,通常先定义成员变量,后定义成员方法。对于成员变量如果不赋初始值,系统会自动赋一个默认值(数值型为0,boolean型为false,引用型为null)。
2)构造方法
构造方法也称为构造函数,构造方法是类中的一种特殊的方法,通过调用构造方法为实例(对象)分配存储空间同时完成实例(对象)的初始化工作。构造方法的特点如下:
* 构造方法的方法名与类名相同。
* 构造方法没有返回值,也不能写void。
* 构造方法是在创建一个对象时,使用new操作符来调用,完成对象的初始化工作。
3)成员方法
成员方法可以对类中声明的变量进行操作,即给出算法描述对象所具有的行为。成员方法的定义包括两部分:方法头和方法体,其语法格式如下:
返回值类型 方法名(参数列表){
方法体
}
方法的返回值类型可以是Java中的任何一种数据类型,描述的是在调用方法之后从方法返回的值,当一个方法不需要返回数据时,返回值类型必须为void。方法的参数可以是任意的Java数据类型。
4)方法重载
在面向对象程序设计语言中,有一些方法的含义相同,但带有不同的参数,这些方法使用相同的名字,这就叫方法重载(overloading)。方法重载的方法参数必须不同,或者是参数的个数不同,或者是参数的类型不同。返回值可以相同,也可以不同。方法重载是实现“多态”的一种方法,目的是同一功能有不同的实现,当然构造方法也可以重载。
2. 对象
当定义一个类时,就是定义了一个新的引用数据类型,可以用这个数据类型来声明这种类型的变量,即实例变量或称为对象变量。
1)对象的声明
如同变量的声明一样,对象被创建和使用前必须进行声明,其语法格式如下:
类名 对象名;
在对象声明的时候,并没有为对象分配存储空间,只有创建对象时,才为对象分配存储空间。这时候不能引用此对象。
2)对象的创建
创建一个对象有两种方法:
(1)先声明再创建。
* 对象声明:
类名 对象名;
* 对象创建:
对象名=new 类名();
(2)一步完成。
类名 对象名= new 类名();
其中,new是新建对象操作符。通过new调用构造方法实例化一个对象,返回该对象的一个引用,即该对象所在的内存地址。
3)对象的使用
对象被创建,即实例化后,可以通过运算符”.”访问自己的属性域,也可以调用创建它的类中的成员方法。其语法格式如下:
对象.成员变量;
对象.成员方法([参数列表]);
4)this的使用
Java中的this关键字可能有些难理解,this表示当前对象,也就是调用方法的对象。在Java中当前对象是指当前正在调用类中方法的对象。this有如下作用:
* 使用this解决局部变量与成员变量同名的问题。
* 使用this引用属性及调用方法。
* 在构造方法中,用this调用另一构造方法。
在构造方法中,通过this调用另一个构造方法,其语法格式是:
this(参数表);
this(参数表)语句必须放在构造方法中的第一句。
3. 类的继承
从已有的类派生出新类,这叫做继承。由继承而得到的类称为子类或派生类,被继承的类为父类或超类。父类包括所有直接或间接被继承的类,Java支持多层继承,一个父类可以有多个间接子类,但继承是单继承的,也就是Java中一个类只能有一个直接父类。
如果子类和父类在同一个包中,那么子类继承了其父类中不是private的成员,包括成员变量和成员方法,继承的成员变量和成员方法的访问权限保持不变。子类和父类不在同一包中时,父类中的private和default访问权限的成员不被子类继承,也就是说,子类只继承父类中的public和protected访问权限的成员作为子类的成员。
1)派生子类
[] class [extends]{
//类体}
这样就在两个类之间建立了继承关系,子类从它的父类中继承可访问的数据域和方法,也可以添加新数据域和方法。
2)方法覆盖
在继承关系中,子类会自动继承父类中定义的方法,但有时在子类中需要对继承的方法进行一些修改,对父类的方法进行重写,即子类定义了与父类中同名的方法,实现对父类方法的覆盖。需要注意的是,在子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表及返回值类型,并且在子类中重写的方法不能拥有比父类方法更严格的访问权限。
3)super的使用
子类声明的成员变量与父类的成员变量的名字相同时,在子类中,父类的成员变量将被隐藏。当子类重写父类的方法后,子类对象将无法访问父类被覆盖的方法,为了解决这个问题,在Java中提供了super关键字,用于从子类中调用父类的构造方法、成员方法和成员变量。
(1)使用super关键字引用父类的成员变量和成员方法,其语法格式如下:
* super.成员变量
* super.成员方法([参数1,参数2…])
(2)使用super关键字调用父类的构造方法,其语法格式如下:
* super([参数1,参数2…])
注意:通过super调用父类的构造方法的代码必须位于子类构造方法的第一行,并且只能出现一次。
4. 访问控制修饰符
1)类的访问控制修饰符
类的访问控制修饰符有两种:public和默认。
2)类成员的访问控制修饰符
Java语言为类成员设置了4种访问控制修饰符:public、protected、private和默认,用来修饰成员变量和成员方法。
* public:public所修饰的类成员可被所有的类访问,public指定的访问权限范围最大。
* protected:类中由protected修饰的成员可以被该类本身、它的子类(包括同一个包中及不同包中的子类)及同一个包中的其他类访问。
* 默认:类中的成员为默认的访问权限时,成员可以被这个类本身和同一包中的类所访问,即包访问权限。
* private:private所修饰的类成员只能被这个类本身访问。
5. 非访问控制修饰符
1)static
在一个Java类中,可以使用static关键字来修饰成员变量,该变量被称为静态变量或类变量。类变量将变量值存储于类的公用内存。类变量访问的语法格式为:
类名.变量名。
static既可以在声明属性时使用,也可以在声明方法时使用。有时我们希望在不创建对象的情况下就可以调用某个方法,换句话说,也就是使用该方法不必和具体对象绑定在一起,这时可在定义方法时使用static关键字,这样的方法称为静态方法或类方法。类方法调用的语法格式为:
类名.方法名
评论
还没有评论。