图书简介:
第1章 Java语言概述 11.1 Java语言简介 11.1.1 Java语言发展史 11.1.2 Java语言的特点 21.1.3 为什么学习Java语言 31.2 Java虚拟机 51.2.1 概述 51.2.2 JVM运行时数据区 61.3 Java开发环境 71.3.1 JRE与JDK 71.3.2 开发环境的搭建 101.4 第一个Java应用程序 131.4.1 编辑、编译与运行 131.4.2 第一个应用程序的基本结构 171.4.3 调试 18习题1 19第2章 数据类型与表达式 202.1 基本数据类型 202.1.1 整型类型 202.1.2 浮点类型 212.1.3 boolean类型 222.2 引用数据类型 222.2.1 类与对象 222.2.2 接口与实现类 232.2.3 数组 232.2.4 字符串 242.2.5 输入与输出 262.3 数据类型转换 282.3.1 基本数据类型转换 282.3.2 引用数据类型转换 312.4 运算符与表达式 322.4.1 操作数 332.4.2 算术运算符 342.4.3 关系运算符 352.4.4 逻辑运算符 362.4.5 位运算符 382.4.6 条件运算符 392.4.7 赋值运算符 392.4.8 语句与语句块 402.5 Java编程规范 412.5.1 注释 412.5.2 空白符 432.5.3 括号 432.5.4 命名规范 44习题2 44第3章 流程控制 463.1 程序的基本结构概述 463.2 选择结构 463.2.1 if语句 473.2.2 switch语句 493.3 循环结构 513.3.1 for语句 513.3.2 while语句 533.3.3 do-while语句 533.3.4 break与continue语句 54习题3 57第4章 数组 594.1 一维数组 594.1.1 数组声明与初始化 594.1.2 数组访问 604.2 二维数组与多维数组 614.2.1 数组声明与初始化 614.2.2 数组访问 634.3 方法调用与参数传递 644.3.1 方法 644.3.2 参数类型 654.4 数组常见操作 674.4.1 插入与删除 674.4.2 遍历 684.4.3 合并 684.4.4 动态扩展 694.4.5 查询 704.4.6 排序 70习题4 72第5章 类与对象 735.1 面向对象编程概述 735.2 类的定义与实例化 745.2.1 类路径与包 745.2.2 数据与方法 775.2.3 访问控制 795.2.4 方法重载 825.2.5 构造方法 825.2.6 static成员 865.2.7 final成员 875.3 面向对象特性 885.3.1 封装 885.3.2 继承 895.3.3 多态 915.4 面向对象高级特性 935.4.1 枚举类型 935.4.2 抽象类 945.4.3 接口 955.4.4 内部类 965.5 实例:图书进货管理子系统 (数组) 985.5.1 问题描述 985.5.2 系统功能分析 985.5.3 系统设计 995.5.4 系统实现 1025.5.5 运行 104习题5 107第6章 异常 1086.1 Java异常体系 1086.1.1 Java异常 1096.1.2 异常类型 1096.1.3 常见异常类 1116.2 异常处理机制 1136.2.1 throws子句 1136.2.2 try-catch-finally语句 1146.2.3 try-with-resource语句 1176.2.4 throw语句 1206.2.5 异常链 1216.3 自定义异常 1216.4 日志 123习题6 126第7章 集合框架 1277.1 泛型 1277.1.1 泛型类 1277.1.2 泛型接口 1287.1.3 泛型方法 1297.1.4 通配符类型 1307.2 集合框架体系 1317.2.1 集合概述 1317.2.2 常用接口与实现类 1327.3 集合对象 1347.3.1 Set接口及实现类 1347.3.2 SortedSet接口及实现类 1377.3.3 List接口及实现类 1407.3.4 Queue接口及实现类 1427.3.5 Deque接口及实现类 1457.3.6 Map接口及实现类 1477.3.7 SortedMap接口及实现类 1497.4 集合工具类 1507.4.1 Arrays 1507.4.2 Collections 1547.5 实例:图书销售管理子系统 (集合) 1567.5.1 问题描述 1567.5.2 系统功能分析 1567.5.3 系统设计 1577.5.4 系统实现 1627.5.5 运行 166习题7 169第8章 I/O流与文件 1708.1 流的基本概念 1708.2 字节I/O流 1718.2.1 InputStream类和OutputStream类 1718.2.2 FileInputStream类和FileOutputStream类 1728.2.3 DataInputStream类和DataOutputStream类 1738.2.4 BufferedInputStream类和BufferedOutputStream类 1758.2.5 ByteArrayInputStream类和ByteArrayOutputStream类 1768.2.6 PipedInputStream类和PipedOutputStream类 1778.2.7 ObjectInputStream类和ObjectOutputStream类 1798.2.8 CipherInputStream类和CipherOutputStream类 1818.3 字符I/O流 1828.3.1 Reader类和Writer类 1828.3.2 InputStreamReader类和OutputStreamWriter类 1838.3.3 FileReader类和FileWriter类 1848.3.4 BufferedReader类和BufferedWriter类 1858.4 文件系统 1868.4.1 文件相关接口与类 1868.4.2 文件操作示例 1888.4.3 随机访问文件类 1898.5 实例:图书信息维护子系统(文件) 1908.5.1 问题与系统功能描述 1908.5.2 系统设计 1918.5.3 系统实现 1958.5.4 运行 200习题8 201第9章 多线程 2029.1 线程的基本概念 2029.2 线程控制 2039.2.1 线程创建与启动 2039.2.2 线程终止 2049.2.3 线程阻塞 2069.3 互斥与同步问题 2079.3.1 线程互斥 2089.3.2 线程同步 2099.4 线程状态 2129.5 死锁 2139.6 实例:作业调度器 2149.6.1 问题与系统功能描述 2149.6.2 系统设计 2159.6.3 系统实现 2159.6.4 运行 218习题9 219第10章 Swing图形界面编程 22010.1 AWT与Swing 22010.2 容器与布局管理器 22010.2.1 顶层容器 22010.2.2 中间容器 22210.2.3 布局管理器 22710.3 Swing常用组件 23910.3.1 JLabel 23910.3.2 JButton 24010.3.3 JComboBox 24110.3.4 JTextField、JPasswordField和 JTextArea 24310.3.5 JCheckBox和JRadioButton 24510.3.6 JList 24610.3.7 JTable 24710.3.8 JTree 25010.3.9 JOptionPane 25310.4 事件侦听与处理模型 25610.4.1 事件 25610.4.2 监听器 25810.4.3 适配器 26010.5 实例:图书信息维护子系统(GUI) 26110.5.1 问题与系统功能描述 26110.5.2 系统设计 26210.5.3 系统实现 26410.5.4 运行 267习题10 269第11章 数据库编程 27011.1 JDBC 27011.2 常用接口与类 27411.3 实例:图书信息维护子系统 (JDBC) 27611.3.1 问题与系统功能描述 27611.3.2 数据库设计与实现 27711.3.3 系统实现 277习题11 281第12章 项目:图书进销存管理系统的设计与实现 28212.1 问题与系统功能描述 28212.1.1 项目描述 28212.1.2 业务流程说明 28312.2 系统设计 28412.2.1 数据库设计 28412.2.2 对象设计 28812.2.3 用户合法性校验流程 29112.2.4 基础信息维护流程(以图 书为例) 29212.2.5 进货流程 29212.2.6 销售流程 29412.3 系统实现 29512.3.1 数据库连接池 29512.3.2 用户登录和注销 29612.3.3 图书增删改查 29712.3.4 进货流程 29912.3.5 销售流程 30212.3.6 单据明细获取 30312.3.7 图书销售排行 30412.3.8 图书库存统计 30512.4 运行 30512.4.1 系统登录界面 30512.4.2 基础信息维护界面(以图书 为例) 30612.4.3 进货界面 30712.4.4 进货单维护界面 30712.4.5 销售界面 30812.4.6 销售单维护界面 30912.4.7 图书销售排行界面 31012.4.8 图书库存统计界面 31012.5 系统扩展 311参考文献 312
展开
Java是当今最受青睐的面向对象程序设计语言之一。从1995年第一个公开版本发布以来,Java语言经历了20多年的发展历史。Java语言具有类似于C/C++语言的语法,但又隐藏了C/C++语言中晦涩的概念,这种简单的特性能帮助程序员快速入门。同时,Java语言还具有跨平台性、高安全性、可扩展性,以及支持多线程、支持分布式环境等特点,已经被广泛应用于桌面系统、移动终端和Web服务器的应用开发中。本书特色本书内容由浅入深,涵盖了Java语言基础知识和大部分关键技术。书中含有大量的实例,实践性强。每个实例都给出了具体的设计思路和详细的实现代码。本书共12章,内容包括Java语言概述、数据类型与表达式、流程控制、数组、类与对象、异常、集合框架、I/O流与文件、多线程、Swing图形用户界面编程、数据库编程,最后一章为综合项目:图书进销存管理系统的设计与实现。本书以实例和综合项目为导向,通俗易懂,图文并茂,实用性强,便于教师教学和学生自学,可作为高等学校Java程序设计、面向对象编程、Java项目实践等相关课程的教材,也可作为具有一定数据库基础、对管理信息系统开发感兴趣的专业人员的参考书。 本书内容 本书共12章,具体内容如下。第1章Java语言概述。本章综述了Java语言的发展历史、特点、运行机制和主要开发环境。本章主要涉及Java虚拟机的基本概念、Java应用程序开发环境的搭建,以及在Eclipse集成开发环境中编写、调试和运行程序等内容。 第2章数据类型与表达式。Java作为一种强静态类型的面向对象程序设计语言,声明的变量和参与计算的表达式在编译时期都必须指定所属的数据类型。本章主要涉及数据类型、类型转换、运算符、表达式和编码规范等内容。第3章流程控制。Java语言提供分支、循环与跳转语句实现对程序流程的控制。本章主要涉及程序的三种基本结构与对应的流程控制语句等内容。第4章数组。数组是线性表的一种重要存储结构,也是Java集合框架的重要基础。本章主要涉及数组声明、初始化、访问和常见操作等内容。第5章类与对象。找到问题域中的类与对象、明确它们具有的属性与功能、理清它们之间的关系是面向对象程序分析与设计方法的重要工作。本章主要涉及面向对象编程、面向对象的三大特性和Java语言面向对象的一些高级特性等内容。第6章异常。Java异常处理机制较传统异常处理方式更加灵活,程序结构更加清晰。本章主要涉及Java异常体系、异常处理机制、自定义异常和日志等内容。第7章集合框架。集合以数组、链表为基础实现数据存储和在存储结构上的各种操作。本章主要涉及泛型、集合框架体系、常用集合对象和集合工具类等内容。第8章I/O流与文件。I/O流为数据提供文件存储能力。本章主要涉及I/O流基本概念、I/O流体系结构、常用I/O流和文件操作等内容。第9章多线程。多线程技术能够提高系统资源利用率,改善用户体验质量。本章主要涉及线程的基本概念、线程控制、线程同步与互斥、线程通信和死锁等内容。第10章Swing图形用户界面编程。使用Swing组件库能构建带有图形用户界面的Java应用程序。本章主要涉及AWT/Swing组件库、容器、布局管理器、常用组件、事件处理等内容。第11章数据库编程。Java应用程序使用JDBC可以访问数据库。本章主要涉及JDBC基本概念、常用接口与类等内容。第12章综合项目:图书进销存管理系统的设计与实现。本章给出了一个综合使用集合框架、Swing组件库、异常、多线程和JDBC等核心知识的项目—图书进销存管理系统的设计与实现,详细阐述了图书进销存管理系统的分析、设计和开发全过程,包含代码实现。本书导读对于Java初学者,应该从本书第1章开始学习并进行操作练习,以了解Java语言的基本语法和Java应用程序的编写规范。对于有一定C/C++语言基础的读者可以快速学习第1~4章,重点学习第5~12章。对于具有Java语言基础、了解SQL Server的读者,可以直接阅读书中提供的实例。第12章可以帮助读者学会如何快速构建带有图形用户界面的管理信息系统,如何使用Java语言解决复杂工程问题。本书约定本书的程序使用Eclipse集成开发环境完成并编译运行,读者在学习过程中也可以采用其他集成开发环境,如NetBeans和IntelliJ IDEA等。我们的理念根据我们的软件开发与软件培训经验,学习一门程序设计语言的关键是“多看、多读、多练”,即多看好书、多读别人的代码、多上机实践和练习,从模仿到能独立编写高质量的程序。本书以实例与综合项目为主线,希望帮助读者快速将学到的知识应用于项目实践中。书中包含丰富的实践内容,希望帮助读者通过大量的实际操作加深对相关内容的认识和理解,尽快把理论知识转换为解决实际问题的能力。扫描二维码可以获取本书全部实例代码。本书由成都大学段林涛编著。作者长期从事计算机软件开发与教学工作,有着丰富的实践经验和教学科研经验。希望本书的出版,对广大Java语言爱好者,特别是想使用Java语言参与实际项目研发的专业人员,起到一定的帮助作用。本书在编写与出版过程中得到了很多专家、教授和朋友的关心与帮助,这里一并表示感谢。其中,四川大学的郭兵教授,电子科技大学的王治国、陈东义、程洪教授给予了悉心的指导,成都大学的叶安胜、黎忠文、高朝邦、李晓玲、杜小丹、于曦等教授,以及张修军、苏长明、郑加林、杨洪、古沐松、汪海鹰、李洁、聂丽莎、赵卫东、刘永红、鄢涛等老师都给予过我极大的帮助。另外成都大学的唐燚、邱玉龙、钟婷、蒋娜、陈红梅、罗伊宁、唐熙、王家俊、袁英华、段金凤、任铭扬、魏兴桃、卢圆、段春娇、魏佳美、娄方成、刘奇、沈森林、陈治宏、毛成、朱桐睿等参加了本书的校对工作。同时也要感谢电子工业出版社和所有参考资料的作者。限于自身水平,书中难免出现遗漏和错误之处,恳请广大读者批评指正。段林涛于成都大学
展开