新书推荐 | Java语言项目化教程(微课视频版)_语言_本书_案例

Java语言是面向对象编程语言的代表,很好地体现了面向对象的理论,允许程序设计者以整体的思维方式进行程序设计。因其具有安全性、稳定性,拥有完善的多线程机制和强大的网络编程能力等特点,使其在面向对象和网络编程中占主导地位。尤其在互联网时代,Java语言大放异彩,成为常用的编程语言之一,因此学习Java语言非常有必要。

大多数传统的Java语言课程,将主要精力放在对Java语言语法细节的介绍上。学生们从一开始就陷入琐碎的细节之中,无法感受到程序设计的乐趣。这样的传统课程带给学生的学习体验常常比较糟糕,这会将许多本来热爱计算机的人拒之门外。

Java语言项目化教程(微课视频版)

视频、源码、课件、教学大纲、教案,以快速迭代、敏捷开发思想,通过开发游戏学习编程。

本书是《C语言项目化教程(微课视频版)》的姊妹篇,两者设计思想一脉相承,都借鉴了斯坦福大学“编程方法学”的思想,通过“微项目”在简化的环境中介绍编程。本书设计的“模拟电子屏” 微项目就像围棋一样,规则非常简单,但是变化万千。与C语言版本相比,Java语言版的微项目是采用面向对象的思想设计的,内容更加丰富多彩,能够实现更加复杂的游戏,充分展现了面向对象的魅力与价值。

读者可以通过“模拟电子屏”项目快速掌握Java的核心技术,迅速完成“俄罗斯方块”“贪吃蛇”“飞机大战”等经典游戏,并且通过这些游戏,找到彼此之间的联系,建立起通用的框架,然后就能快速编写各种经典小游戏,从而体会到作为一名设计者的乐趣,进而掌握程序设计最本质的内容。在熟练掌握Java核心技术后,可以不断升级小游戏,增加新的功能,使其成为一个复杂的网络游戏系统。在这个过程中读者可以学习到数据库和网络编程相关的知识,并且为学习如Spring等经典开源框架奠定良好的基础。

简而言之,读者在完成这些项目的过程中,一条经典的Java工程师进阶路线图就隐藏其中。这条路线就是从Java核心技术的学习到设计模式、流行开源框架的使用,然后是高并发、分布式系统的设计。这是一条精彩而有趣的路线,初学者可能对这条路线很陌生,但是随着学习的深入,会慢慢理解这条路线背后的逻辑。当然,这条路不是一蹴而就的,需要循序渐进。

本书受篇幅所限,不可能将这条路线中的所有内容包含其中,主要聚焦在Java核心技术的学习,并且在不断重构代码的过程中,会涉及部分经典的设计模式,如工厂模式、建造者模式等,让读者切身感受到设计模式的作用。读者在学习的时候,也需要不断重构代码,在重构的过程中,不断精进程序设计能力。

展开全文

通过“模拟电子屏”项目学习Java语言,读者不仅可以轻松愉快地学习到Java语言的知识,而且能切身感受到,作为面向对象语言的代表,Java语言在解决程序开发中复杂性问题上的优势,正如Java语言设计者的初衷一样:Java语言的目标是减少开发稳健性代码所需要的时间和困难。

本书主要内容

本书共分为14章,各章主要内容如下:

第一部分为基础篇,包括第1~6章。

第1章介绍程序及程序设计的基本概念,并且通过简单的案例介绍Java语言程序的基本结构和特点。

第2章介绍数据类型、运算规则,如何读取和操作数据。

第3章介绍Java的流程控制语句,包括选择控制结构语句和循环控制结构语句。

第4章介绍数组的定义、引用,以及数组的应用。

第5、6章介绍面向对象的编程思想、基本概念和特征,主要包括类的设计、对象的创建、抽象类和接口以及封装性、继承性和多态性。这是本书的重点内容,只有掌握了面向对象的编程思想,才能真正理解Java语言。

第二部分为提高篇,包括第7~13章。

第7章介绍集合与泛型,主要讲述集合和泛型的概念,以及常用集合的使用。

第8~10章介绍异常处理、字符串和输入输出常用的类,主要讲述异常处理机制、以及字符串类常用方法和流的概念,以及文件读写操作。

第11章介绍多线程,包括线程的创建、生命周期、调度方式以及线程同步、死锁等内容。

第12章介绍JDBC的基本概念,包括数据库访问步骤,以及如何使用JDBC对数据库进行操作。

第13章介绍网络编程的相关知识,包括网络通信协议以及使用TCP和UDP进行网络程序的编写。

第三部分为综合应用篇,包括第14章。

第14章介绍综合应用案例: 网络版“飞机大战”游戏,利用多线程、数据库与网络编程等相关知识完成较为复杂的网络版游戏,并通过该案例掌握网络游戏编程的框架设计。

目录

向上滑动阅览

第一部分基础篇

第1章Java语言概述

1.1Java语言的特点

1.2编程环境

1.2.1Java语言软件开发包

1.2.2集成开发环境介绍

1.3“模拟电子屏”项目介绍

1.3.1项目简介

1.3.2项目结构介绍

1.3.3项目核心类和方法介绍

1.4简单的Java语言程序示例

1.5注释

1.6综合案例:“俄罗斯方块”向下运动

习题

第2章Java数据类型及运算符

2.1数据类型

2.2变量和常量

2.2.1变量

2.2.2常量

2.3运算符与表达式

2.3.1赋值运算符与赋值表达式

2.3.2算术运算符与表达式

2.2.3关系运算符与关系表达式

2.3.4逻辑运算符与逻辑表达式

2.3.5逗号运算符与逗号表达式

2.3.6运算符优先级

2.4类型转换

2.4.1自动类型转换

2.4.2强制类型转换

2.5综合案例:“贪吃蛇”的运动

习题

第3章控制程序设计

3.1选择控制结构语句

3.1.1if语句

3.1.2switch语句

3.2循环控制结构语句

3.2.1while语句

3.2.2dowhile语句

3.2.3for语句

3.2.4三种循环的比较

3.2.5嵌套循环语句

3.2.6break语句和continue语句

3.3综合案例:按键控制“贪吃蛇”运动

习题

第4章数组

4.1一维数组

4.1.1一维数组的定义

4.1.2一维数组的初始化

4.1.3一维数组的使用

4.2二维数组

4.2.1二维数组的定义

4.2.2二维数组的初始化

4.2.3二维数组的引用

4.3综合案例:“贪吃蛇”游戏

习题

第5章面向对象基础

5.1面向对象概述

5.2类和对象

5.2.1对象的创建与使用

5.2.2类的定义

5.2.3访问控制符

5.2.4方法的重载

5.2.5构造方法

5.2.6static关键字

5.3综合案例:重构“贪吃蛇”游戏

习题

第6章面向对象特性

6.1类的继承

6.1.1继承的概念

6.1.2方法重写

6.1.3super关键字的使用

6.1.4子类的构造方法及调用过程

6.1.5final修饰符

6.1.6Object类

6.2抽象类和接口

6.2.1抽象类

6.2.2接口

6.3多态

6.3.1多态概述

6.3.2对象的类型转换

6.3.3接口实现多态

6.4内部类

6.4.1静态内部类

6.4.2非静态内部类

6.5综合案例:“地图”编辑器

习题

第二部分提高篇

第7章集合与泛型

7.1集合的概念

7.2Collection接口与实现类

7.2.1List接口与实现类

7.2.2Set接口与实现类

7.2.3Collection集合遍历

7.3Map接口与实现类

7.4泛型

7.5综合案例:“飞机大战”游戏

习题

第8章异常处理

8.1异常处理的方法

8.1.1异常的概念

8.1.2异常的捕获和处理

8.1.3异常的抛出

8.1.4自定义异常

8.2综合案例:重构“飞机大战”游戏

习题

第9章字符串

9.1String类

9.1.1创建String类对象

9.1.2字符串类常用方法

9.2StringBuffer类和StringBuilder类

9.3综合案例:数据加密和解密

习题

第10章输入输出

10.1流的概念

10.2字节流

10.2.1InputStream类和OutputStream类

10.2.2字节流读写文件

10.2.3缓冲字节流读写文件

10.3字符流

10.3.1字符流读写文件

10.3.2字符缓冲流读写文件

10.4标准输入输出流

10.5对象序列化

10.6综合案例:游戏数据的存档和读取

习题

第11章多线程

11.1线程的概念

11.2线程的创建

11.2.1继承Thread类实现多线程

11.2.2通过Runnable接口实现多线程

11.3线程的状态与调度

11.3.1线程的状态

11.3.2线程的调度

11.4线程同步与对象锁

11.4.1线程安全

11.4.2同步方法

11.4.3同步代码块

11.4.4同步锁

11.4.5死锁问题

11.4.6线程通信

11.5综合案例:多线程技术重构“飞机大战”游戏

习题

第12章数据库编程

12.1JDBC概述

12.2JDBC使用步骤

12.2.1加载驱动程序

12.2.2建立连接对象

12.2.3创建语句对象

12.2.4获取SQL语句执行结果

12.2.5关闭对象,释放资源

12.3DAO设计模式

12.4综合案例:用户管理系统

习题

第13章网络编程

13.1网络通信概述

13.2TCP通信

13.3UDP通信

13.4综合案例: 网络版用户管理系统

习题

第三部分综合应用篇

第14章综合应用:网络版“飞机大战”

习题

参考文献

本书特色

(1) 引导读者使用面向对象的思维去思考问题和解决问题。“模拟电子屏”是一个小而美的游戏引擎,采用面向对象的思维方式设计完成,扩展性较强,通过它可以完成很多有趣的游戏。在完成较多游戏之后,读者会发现游戏之间的共性问题,逐步学会使用面向对象的思维去设计程序,提高程序的复用性和可扩展性。

(2) 以项目式游戏开发的实战案例,驱动Java语言编程的学习。本书的项目采用“小步快跑,快速迭代”的互联网产品设计方法,将一个功能简单的小项目,逐步迭代成一个复杂的系统。在此过程中,读者可以直观地感受到软件设计的魅力和乐趣,并从中学习到软件设计的思想和方法。

(3) 语言简洁、案例实用、体例清晰、配套资源丰富,对初学者友好。本书语言通俗易懂、简洁明了; 对Java 8~Java 19中重要的新特性进行讲解,涉及了Lambda表达式和接口的新特性等内容; 案例实用性强,符合企业用人实际需求; 结构层次分明,各章相互关联、逐步递进,便于读者自学或高校选作教材使用。

配套资源

为了便于教与学,本书配有微课视频(700分钟)、源代码、教学课件、教学大纲、教案、题库。

读者对象

本书既可作为高等学校“Java语言程序设计”课程的教材,也可以作为编程爱好者的自学辅导书。读者对象包括零基础的初学者; 具有一定基础,但是缺乏项目经验的读者; 想从事Java语言软件开发相关工作的读者。

特别声明

本文仅代表作者观点,不代表本站立场,本站仅提供信息存储服务。

分享:

扫一扫在手机阅读、分享本文