图书前言

前    言

Java语言具有纯粹的面向对象的特点,非常适合于面向对象程序设计的学习。本书面向有一定的程序设计语言基础的读者,全面介绍Java语言的面向对象编程与设计技术。在第2版的基础上,基于Java语言新引入的特性,结合作者工程实践基础和20余年的Java面向对象程序设计课程的教学经验,对教材内容进行了新的修订,并增加了涵盖课程内容的32课时的微课视频。全书内容共分12章。

第1章概述了Java发展、平台、开发环境,从实例程序出发介绍Java语言的基本语法,包括标识符与关键字、数据类型、变量与赋值、运算符与表达式、枚举类型、流程控制语句等。

第2章从面向对象的概念出发,描述了类和对象在Java语言中的实现,介绍了类的封装、方法重载、类成员和实例成员、包的基本概念及UML类图等技术。

第3章介绍面向对象程序设计的继承和多态两个重要特征,描述了Java语言中类继承的实现、类中成员的访问权限控制、抽象类和接口、多态及设计模式。

第4章介绍Java的数组和字符串编程,包括数组创建、数组初始化、数组相关操作、多维数组、可变长参数、字符串、命令行参数等内容。

第5章讲解泛型与集合框架,泛型编程技术包括泛型类、泛型方法、泛型类的继承、通配符的使用等相关技术;集合框架包括集合核心接口、具体实现类和集合算法等内容。

第6章介绍Java的异常处理,包括异常机制、处理方法、自定义异常类及其使用、断言及日志机制。

第7章描述Java多任务编程,包括线程的概念、实现、控制、同步、线程池、死锁等内容。

第8章讲述Java的输入/输出处理,包括流的概念、字节流、字符流、命令行I/O、格式化I/O、对象序列化、文件I/O等的应用。

第9章讲解基于Swing的GUI编程,包括容器、组件、布局管理器、事件处理和多媒体处理等内容。

第10章介绍Java的网络编程技术,包括网络编程的基本概念、Java网络相关类、TCP通信、UDP通信、使用URL进行网络通信的方法,以及与服务器端交互等具体应用。

第11章介绍Java访问数据库的编程技术,包括SQL语言基础、JDBC、SQLite数据库等的具体应用。

第12章介绍使用第三方类库的编程技术,包括Maven构建工具的使用、常用的第三方类库、通过第三方类库实现JSON数据操作、生成统计图、处理Word文件等实用性应用功能的开发。

本书定位于面向对象程序设计的教学,因此对Java语言的相关特性做了取舍。例如,函数式编程仅引入了Lambda表达式,并未展开对Stream API、函数式接口等内容的详细描述;对于Java的反射、正则表达式、JavaFX等内容也没有涉及。本书对Java的后继学习给出了一些建议,有兴趣的读者可扫描下方二维码。

本书第1、4、5、6、10、11、12章由陈旭东编写和修订,第2、3、7、8、9章由马迪芳编写和修订。徐保民和魏小涛对本书内容提出了建设性的意见并参与了相关案例的选择和代码的调试。全书最后由陈旭东负责定稿。

本书的出版得到了北京交通大学出版社谭文芳老师的大力支持,北京交通大学继续教育学院为课程内容的微课录制和编辑提供了极大的帮助,北京交通大学软件学院、计算机与信息技术学院、网络空间安全学院、继续教育学院相关课程的老师也对本书的编写提出了宝贵意见,在此表示深深的谢意。

本书内容可能存在不足和错误,恳请各位读者不吝赐教。联系作者的电子邮箱为:chenxd@bjtu.edu.cn(陈旭东)和dfma@bjtu.edu.cn(马迪芳)。

编  者

2025年10月