前言 信息技术的发展日新月异,云计算、大数据、物联网、人工智能、互联网+等正在改变着人们的生活。信息技术和高等教育深度融合,推动着教学理念、教学模式、教学方法和教学手段的变革,知识传递方式发生了重大变化。 习近平总书记在中国共产党第二十次全国代表大会上的报告中指出,“教育是国之大计、党之大计。” 近年来,慕课(Massive Open Online Courses,MOOC)在我国迅速发展,新冠疫情也助推着在线教学规模的扩大和水平的提升。截至2022年2月底,我国上线慕课数量超过5万门,在校生获得慕课学分的人次超过3亿,慕课数量和学习人数均居世界第一,并且仍保持快速增长的态势。翻转式学习、线上线下相结合的混合式教学等新型教学模式成为高校教学的主流和常态。 在这种趋势下,编者于2017年5月在清华大学出版社出版了创新型教材《Java程序设计教程——微课·实训·课程设计》,在传统教材的基础上配套了丰富的实操讲解视频,受到高校教师的普遍欢迎,被几十所院校选用。时间一转眼过去了5年,随着Java技术的发展,教材修订势在必行。 Java是一门面向对象的程序设计语言。Java采用类C语言语法,简单易学,功能强大,拥有完整丰富的生态体系。自1995年由Sun公司发布以来,Java语言一直位居计算机编程语言排行榜前列,是IT产业软件开发的主力军。 本书采用当前最新版JDK,IDE采用Eclipse,制定了兼顾一般学习者和Java软件工程师两个层次的教学目标,重新选取示例程序和编程作业,对教学内容进行重构,通过“活代码”和“做中学”的CDIO(构思、设计、实现、运作)理念来讲解Java。 (1) 对于零基础的学习者: 建议每周3课时,用12周时间完成学习(大学一年级新生的课程,建议设置为3学分)。其中,10周时间学习Java语法、面向对象编程技术、JDK常见类的使用、Java I/O技术、Java GUI技术、Java多线程技术等内容; 2周时间学以致用,完成一个难度适中、功能完整的课程设计项目——排队叫号系统。相应的慕课课程可以到中国大学MOOC平台进行学习。 (2) 对于有一定基础的学习者: 建议每周4课时,用16周时间完成学习。其中,12周时间学习Java语法、面向对象编程技术、JDK常见类的使用、Java I/O技术、Java GUI技术、Java多线程技术、Java网络编程技术、JDBC编程技术等内容。每个学生用2周时间独立完成一个课程设计。相应的慕课课程可以到中国大学MOOC平台进行学习。 本书特色如下。 (1) 数字化教材建设: 本书以纸质教材为体,以中国大学MOOC和超星泛雅教学平台为翼,建设了包括文本、图片、多媒体课件、微视频、动画、思维导图、课程设计、作业库、试题库、线上讨论、OnlineJudge平台等数字化、立体化、智能化资源,形成覆盖线上线下、课前课中课后、学习实践全过程的教学系统。 (2) 课程思政: 本书通过名家观点、拓展知识、综合实例、编程要求等方式将课程思政与知识传授、能力培养、价值塑造有效融为一体,如盐在水。 (3) 计算思维: 学习Java编程是提高信息素养、锻炼计算思维、培养实践创新能力的最佳选择。 (4) 借鉴CDIO“做中学”和“学中做”的理念,建立了“厘清需求、知识准备、算法设计、编程实现、总结提高”五步编程法,便于翻转课堂和线上线下混合式教学的实施。 (5) 相关荣誉: 张延军老师主持的“Java程序设计”课程被评为“河北省精品在线开放课程”,被列入河北省省级一流本科立项建设课程(线上线下混合式),建设期为5年。由张延军老师带领的“Java课程群”教学团队被评为河北省省级优秀教学团队。 本书由张延军、薛刚主编,李贞、杨召南任副主编并参与了教材编写、资料整理、代码调试、文稿校对等工作。清华大学出版社的编辑为本书的顺利出版提供了宝贵的意见,付出了大量的劳动,在此一并表示感谢。 本书配套微课视频、教学大纲、PPT课件、程序源码、习题答案等丰富的教学资源。读者用手机微信扫描本书封底的“文泉云盘防盗码”、获得授权后,即可扫描书中的二维码观看视频(二维码位置请参阅附录B)。其他资源可以从清华大学出版社微信公众号“书圈”(见封底)获取。如果在本书及资源的使用中遇到问题,请发邮件至404905510@qq.com联系责任编辑。 由于编者水平有限,书中不足之处在所难免,欢迎广大同行和读者批评指正。 让我们一起跟随本书学习Java语言,用程序代码控制计算机去“触摸”世界,用计算思维引导创新实践。让我们在交流讨论中提高,在编程实践中进步。 欢迎走进精彩的Java编程世界! 编者 2023年1月