前言 党的二十大报告中提出“要加快建设数字中国” “培育壮大集成电路、人工智能、云计算、区块链等数字产业”,Java是数字产业发展中重要的一门软件开发语言。掌握Java语言开发是当代大学生投身建设数字中国的必备技能,未来国家对Java技术人才的需求将会持续增长,学习Java的人也将越来越多。为了让读者快速上手Java,且学以致用,本书特点如下。 (1) 重点突出,注重实用。本书面向Java初学者、以职业技能培训为方向,将企业中常用的技术点作为重点讲解,去掉实用性很低的技术点,如Vector集合框架在实际开发中应用非常少,则可以不讲解,将篇幅留给实用性更强的知识点。 (2) 实用案例,项目驱动。Java属于实用性技能,最好的学习方法就是勤加练习。书中每一个知识点都配套有案例讲解。除此之外,本书最后以项目驱动技术点的讲解,由点到面对单个技术点进行串联,让读者能够在项目中综合运用所学知识,从而提升其实际技术能力。 (3) 面向职业,传授经验。国家“十四五规划”提出建设数字中国,且大学生是国家建设的重要力量,学习不能停留在纸上,更应该以职业为导向来思考技术的用途,即技术实战经验。本书除了介绍入门学习的技术点外,还从实际出发讲授了技术点的最佳用法,实际项目开发经验是Java程序员必学内容。 计算机编程语言是人与计算机、计算机与计算机之间的一种交流语言,即数据信息的交互。通俗地理解,计算机语言的作用是数据传输,因此学习Java语言的最终目的是学会如何使用Java语言进行数据的传输,基于此目的,本书内容分为以下四部分。 第一部分,数据的定义,主要在第1~5章进行讲解。 第二部分,数据的存储,主要在第7章和第8章进行讲解。 第三部分,数据的传输及开发效率新特性,主要在第9~12章进行讲解。 第四部分,Java开发语言的应用实践,主要在第6章和第13章进行讲解。 本书共13章,以由浅入深、理论结合实践的方式对Java知识点进行讲解,通过形象的类比让晦涩难懂的技术点变得易于理解。 第1章介绍了Java开发环境的配置,包括JDK配置和IntelliJ IDEA安装,高级程序设计语言和低级程序设计语言的区别。 第2章以IntelliJ IDEA作为开发工具编写和运行第一个Java程序,介绍了Java程序的运行过程。 第3章系统地介绍了Java语言基础,包括Java基本语法、八种基本数据类型、常量与变量、运算符、选择结构、循环结构、一维数组和二维数组等。 第4章和第5章全面介绍了面向对象程序设计,包括类和对象、抽象类与接口等技术点,以及采用类比法形象地介绍了面向对象三大特征——继承、封装、多态。 第6章主要介绍了Java中异常的分类和调试方法,以及基于IntelliJ IDEA工具的异常DEBUG模式。异常是日常开发中的常见问题,掌握异常的调试方法是Java程序员的必备能力。 第7章介绍了Java常用类,包括Object、八种基本数据类型的包装类、Math类、字符串操作类、日期操作类等。 第8章介绍了Java中的集合框架,包括List、Set和Map三大类集合框架。集合为在内存中数据存储提供了多种方法,属于Java开发中的必备知识。 第9章介绍了I/O流。I/O流是数据传输的工具,类似现实世界的交通工具,计算机中的数据通过I/O流进行传输。 第10章介绍了Java并发编程的多线程,程序内部为了提升性能,往往有多个线程在处理数据,本章从线程创建、线程生命周期等方面详细介绍了多线程的使用。 第11章基于计算机网络详细讲解了多个计算机之间的数据通信,即Java网络编程,包括TCP和UDP网络协议等,以及通过Socket实现网络连接与数据传输。 第12章介绍了Java 8中有关提升开发效率的技术特性,如函数式接口、Lambda、Stream API等。 第13章通过仿写《羊了个羊》游戏项目将Java核心技术点进行串联,由点到面的技术讲解更能让读者理解和掌握Java面向对象程序设计的核心思想。 本书引用了有关专业文献和资料,在此对有关文献的作者表示感谢,限于编者的理论水平和实践经验,书中疏漏之处在所难免,恳请广大读者批评、指正。 编者2023年3月