本书按照“零基础学Java”的要求编写,着重介绍了Java程序的开发平台、Java语言基本语法和句法、Java的基本程序结构、类和对象、继承、多态等相关知识,使读者系统掌握Java的基础理论,为后期Java的高级应用及JavaWeb等课程的进一步学习奠定良好的基础。
本书作为软件技术专业第一门语言基础课教材,旨在培养学生分析、解读和编写Java应用程序的能力和逻辑思维能力,同时培养良好的编程习惯和职业素养。本书也可作为其他专业学生学习Java语言的教材和参考书。
“Java语言程序设计”是计算机各专业的基础课程,要求学生能够了解编程的一般过程及编程规范,并熟练掌握Java语言程序开发工具。
本书分为基础编程篇和Java面向对象编程篇两部分。
基础编程篇共四章:认识Java、Java语言基础、Java结构化程序设计、数组与字符串。由于本书的读者对象是“零基础”的初学者,编者参考自然语言的教学方法,按照由浅入深、循序渐进的原则编写相关内容。本篇以“任务引导、理实结合、边学边练、便于教学”为主要特色,具体表现在:
(1) 将自然语言的教学方法渗透到Java语言的教学当中,通过字(字符集)、词(关键字和标识符)、句(Java语句)、篇(程序设计)的学习,让学生感受到语言的学习是相通的。
(2) 实施理论与实践一体化的教学模式,使学生在学习理论知识的同时,提高编程语言的应用能力和实际操作能力。
(3) 编排合理,系统讲解各知识点,有利于学生继续学习和提升专业能力。
(4) 通过任务的分析与学习,使读者不但掌握了理论,更重要的是学会了结构化程序设计思想,把理论与学习目的有机地结合在一起。
(5) 在编写过程中,始终注意编程规范,旨在培养学生的编程习惯和基本职业素养。
(6) 案例的选择集知识性、趣味性、实用性于一体,以提高学生学习Java语言的兴趣。
Java面向对象编程篇共两章:学生类和用户管理。本篇以“项目引导,理实一体化”的教学方式将面向对象的抽象性、继承性、多态性巧妙地结合在项目中,淡化理论,重在实践,以会应用为终极目的。
本书由西安航空职业技术学院姚海军任主编,并完成第1、2、3章的编写任务;陈洁任第一副主编,完成第5、6章的编写任务;陈卫卫任第二副主编,完成第4章的编写任务。西安航空职业技术学院杨利荣任主审。
本书在编写过程中,得到了西安航空职业技术学院软件教研室同事的大力支持,并提出了很多宝贵意见,在此一并表示感谢。
由于编者的水平有限,书中不足之处在所难免,恳请广大读者和同行批评指正。
第一部分 基础编程篇
第1章 认识Java 2
1.1 项目任务 2
1.2 项目解析 2
1.3 技术准备 3
1.3.1 Java的来历 3
1.3.2 Java语言的特点及应用领域 3
1.3.3 Java语言的开发平台 3
1.3.4 Java的程序分类 4
1.3.5 Java开发环境 4
1.3.6 搭建JDK运行环境 5
1.4 项目学做 8
1.5 强化训练 16
1.6 习题 16
第2章 Java语言基础 18
2.1 项目任务 19
2.2 项目解析 19
2.3 技术准备 19
2.3.1 关键字与标识符 19
2.3.2 数据类型 20
2.3.3 常量与变量 22
2.3.4 运算符与表达式 23
2.3.5 数据类型的转换 29
2.3.6 转义字符 31
2.3.7 语句 31
2.3.8 注释 33
2.3.9 输入/输出方法 34
2.3.10 Java源程序框架结构 37
2.4 项目学做 37
2.5 强化训练 38
2.6 习题 38
第3章 Java结构化程序设计 42
3.1 项目任务 42
3.2 项目解析 42
3.3 技术准备 43
3.3.1 结构化程序设计简介 43
3.3.2 程序流程图 43
3.3.3 顺序结构 45
3.3.4 分支结构 45
3.3.5 循环结构 62
3.4 项目学做 79
3.5 习题 84
第4章 数组与字符串 92
4.1 项目任务 92
4.2 项目解析 92
4.3 技术准备 93
4.3.1 数组的概念与分类 93
4.3.2 一维数组 93
4.3.3 二维数组 96
4.3.4 常用算法设计 99
4.3.5 字符串 102
4.4 项目学做 105
4.5 习题 111
第二部分 Java面向对象编程篇
第5章 学生类 116
5.1 项目任务 116
5.2 项目解析 116
5.3 技术准备 117
5.3.1 类的定义 117
5.3.2 对象的创建与使用 118
5.3.3 构造方法 120
5.3.4 构造方法的重载 121
5.3.5 this关键字 123
5.3.6 static关键字 125
5.4 项目学做 128
5.5 强化训练 129
5.6 习题 130
第6章 用户管理 132
6.1 项目任务 132
6.2 项目解析 132
6.3 技术准备 133
6.3.1 继承定义 133
6.3.2 重写父类方法 134
6.3.3 super关键字 136
6.3.4 final关键字 139
6.3.5 抽象类和接口 142
6.3.6 多态 146
6.3.7 对象的类型转换 148
6.3.8 包 151
6.3.9 访问控制 154
6.4 项目学做 154
6.5 强化训练 161
6.6 习题 161
参考答案 163
参考文献 176