新書推薦:
《
罗马政治观念中的自由
》
售價:NT$
230.0
《
中国王朝内争实录:宠位厮杀
》
售價:NT$
281.0
《
凡事发生皆有利于我(这是一本读了之后会让人运气变好的书”治愈无数读者的心理自助经典)
》
售價:NT$
203.0
《
未来特工局
》
售價:NT$
254.0
《
高术莫用(十周年纪念版 逝去的武林续篇 薛颠传世之作 武学尊师李仲轩家世 凸显京津地区一支世家的百年沉浮)
》
售價:NT$
250.0
《
英国简史(刘金源教授作品)
》
售價:NT$
449.0
《
便宜货:廉价商品与美国消费社会的形成
》
售價:NT$
352.0
《
读书是一辈子的事(2024年新版)
》
售價:NT$
352.0
|
編輯推薦: |
Java是目前最流行的计算机编程语言之一。本书内容主要包括Java的发展历史、开发环境的配置、语言基础、流程控制、类与对象、继承、抽象类、接口、多态、异常处理、面向对象程序设计的基本原则、字符串和日期类、图形用户界面设计、Java输入和输出、多线程和网络编程、Java与数据库。为了加强读者对所学知识的应用,每章都给出一个较完整的实例,实例基本能涵盖本章所学知识,以帮助读者掌握Java语言及项目的开发。本书免费提供教材配套教学资源包,包括全书的电子教案、习题参考答案及分析、书中讲解的源代码。
|
內容簡介: |
Java是目前最流行的计算机编程语言之一。本书内容主要包括Java的发展历史、开发环境的配置、语言基础、程序流程控制、类与对象、继承、抽象类、接口、多态、异常处理、常用类和集合、图形界面设计、Java输入和输出、多线程和网络编程、Java与数据库。为了加强读者对所学知识的应用,重点章的第一节都给出完整的实例,实例基本涵盖本章所学知识,帮助读者掌握Java语言及项目的开发。
本书中的程序在JDK中验证,并给出了程序运行结果、问题分析和程序扩展。本书免费提供了与教材配套的教学资源包,包括全书的电子教案、习题参考答案及分析、书中案例的源代码。
本书可作为高等学校计算机科学、信息管理等相关专业“Java语言程序设计”课程的教材,也可作为Java自学者、Java程序员初学者的参考书。
|
目錄:
|
第一篇Java基本语法
第1章Java语言概述3
1.1Java语言的发展史3
1.1.1Java语言的诞生3
1.1.2Java语言的发展3
1.1.3Java语言的用途5
1.2Java语言的特点5
1.3Java语言平台6
1.3.1JDK和JRE7
1.3.2Java虚拟机7
1.3.3垃圾收集器7
1.4JDK的安装8
1.4.1下载与安装JDK8
1.4.2JDK环境的配置与HelloWorld测试9
1.5集成开发环境Eclipse13
1.5.1Eclipse的下载与安装13
1.5.2使用Eclipse编写第一个Java程序13
1.6集成开发环境IntelliJ IDEA15
1.6.1IntelliJ IDEA的下载与安装15
1.6.2使用IDEA编写第一个Java应用程序15
1.7本章小结18
1.8习题19
第2章Java语言基础20
2.1案例: 华氏温度到摄氏温度转换的实现20
2.2标识符与关键字21
2.2.1标识符21
2.2.2关键字21
2.3常量、变量及基本数据类型22
2.3.1常量和变量22
2.3.2基本数据类型24
2.4数据类型转换26
2.5数据的标准输入和输出27
2.6运算符和表达式29
2.7本章小结34
2.8习题35
第3章程序流程控制36
3.1案例: 摄氏温度到华氏温度对照表的实现36
3.2顺序结构37
3.3分支语句38
3.3.1if…else语句38
3.3.2switch语句44
3.4循环语句47
3.4.1for循环47
3.4.2while循环50
3.4.3do…while循环51
3.4.4for…each循环52
3.5控制语句53
3.6数组54
3.6.1数组的创建和使用54
3.6.2基本数据类型数组57
3.6.3数组的操作58
3.6.4数组的综合案例59
3.7本章小结61
3.8习题62
第4章类与对象65
4.1案例: 学生类的定义和使用65
4.1.1创建学生类程序的步骤65
4.1.2程序解析68
4.2面向对象程序设计69
4.2.1面向对象程序设计概述69
4.2.2面向对象程序设计的特点69
4.2.3过程与对象70
4.2.4Java程序的基本结构72
4.3定义类72
4.4构造方法与对象的创建73
4.5类变量和实例变量77
4.6类方法和实例方法79
4.7包83
4.7.1包的概念83
4.7.2使用package定义包84
4.7.3使用import引入包84
4.7.4系统包85
4.8封装性与访问控制符86
4.9对象数组88
4.10对象的组合89
4.11基本类型的封装类90
4.11.1封装类90
4.11.2利用封装类进行数据类型的转换91
4.11.3字符的处理91
4.12本章小结92
4.13习题93
第5章面向对象高级特性94
5.1案例: 完善学生类94
5.1.1完善学生类的步骤94
5.1.2程序解析96
5.2继承96
5.2.1创建子类97
5.2.2子类的继承性98
5.2.3子类对象的内存构造100
5.2.4父类与子类的同名成员100
5.3关键字this和super103
5.3.1在构造方法和实例方法中使用this103
5.3.2this表示当前对象104
5.3.3使用super调用父类中指定的构造方法105
5.3.4使用super调用被隐藏的成员106
5.4final关键字107
5.4.1final修饰变量107
5.4.2final方法109
5.4.3final修饰类110
5.5转型与多态110
5.6抽象类和接口113
5.6.1抽象类113
5.6.2接口115
5.6.3接口回调117
5.6.4接口和抽象类118
5.7内部类119
5.8匿名对象和类120
5.8.1匿名对象120
5.8.2类的匿名类121
5.8.3接口的匿名类122
5.9异常类122
5.9.1异常处理机制123
5.9.2自定义异常125
5.10反射126
5.10.1认识Class类126
5.10.2通过反射获取类的结构131
5.11本章小结140
5.12习题141
第6章常用类、泛型与集合143
6.1案例: 简易字符串编辑器143
6.1.1案例实现143
6.1.2程序解析147
6.2案例: 对一个对象数组进行排序147
6.3String类148
6.3.1创建String字符串149
6.3.2String类的常用操作及方法150
6.4StringBuffer类154
6.4.1创建StringBuffer类对象154
6.4.2StringBuffer类的常用方法155
6.5String类与StringBuffer类的比较157
6.6StringTokenizer类158
6.6.1StringTokenizer类对象的创建158
6.6.2StringTokenizer类的常用方法159
6.7日期类159
6.7.1Date类159
6.7.2Calendar类162
6.8泛型164
6.8.1泛型类164
6.8.2使用泛型类声明对象165
6.8.3泛型接口165
6.8.4泛型方法166
6.8.5泛型类型的限定167
6.9集合框架168
6.9.1集合168
6.9.2迭代器169
6.9.3线性表170
6.9.4HashSet173
6.9.5LinkedHashSet175
6.9.6TreeSet176
6.9.7映射179
6.10本章小结182
6.11习题185
第二篇图形界面设计与I/O处理
第7章图形界面设计191
7.1案例: 简易文本编辑器的制作191
7.1.1案例实现191
7.1.2程序解析196
7.2Swing基础196
7.2.1Swing概述196
7.2.2Swing容器与组件197
7.2.3Java事件处理199
7.3Swing常用组件206
7.3.1按钮和标签207
7.3.2单选按钮和复选框208
7.3.3文本框和文本区212
7.4本章小结216
7.5习题216
第8章Java输入和输出218
8.1案例: 完善文本编辑器218
8.2文件操作225
8.2.1File类225
8.2.2File类的方法226
8.3字节流228
8.3.1流概述228
8.3.2InputStream和OutputStream229
8.3.3FileInputStream和FileOutputStream230
8.3.4BufferedInputStream和BufferedOutputStream235
8.3.5DataInputStream和DataOutputStream239
8.3.6ObjectInputStream和ObjectOutputStream241
8.4字符流243
8.4.1Reader和Writer243
8.4.2FileReader和FileWriter245
8.4.3BufferedReader和BufferedWriter251
8.5随机访问文件255
8.6本章小结258
8.7习题258
第三篇Java多线程和网络
第9章多线程263
9.1案例: 火车卖票多线程程序263
9.2线程和线程的创建265
9.2.1线程概述265
9.2.2使用Thread类创建线程类266
9.2.3使用Runnable接口创建线程类267
9.2.4使用Callable和Future接口创建线程269
9.3线程的生命周期271
9.4线程的常用控制方法272
9.4.1join方法272
9.4.2守护线程273
9.4.3线程的优先级274
9.5线程同步275
9.5.1线程安全问题275
9.5.2同步代码块276
9.5.3同步方法278
9.5.4同步锁279
9.6线程通信281
9.7本章小结282
9.8习题283
第10章网络编程285
10.1案例: HelloWorld程序285
10.2Java的基本网络支持287
10.2.1IP地址、域名和端口287
10.2.2使用InetAddress288
10.2.3URL网络编程289
10.3基于TCP协议的网络编程292
10.3.1Socket模型292
10.3.2客户端与服务器端通信程序的实现294
10.3.3服务器端的多线程实现297
10.4基于UDP协议的网络编程300
10.4.1UDP协议简介300
10.4.2DatagramSocket类和DatagramPacket类300
10.4.3使用DatagramSocket收发数据的实现302
10.5本章小结303
10.6习题304
第四篇数据库编程
第11章Java数据库309
11.1JDBC简介309
11.1.1JDBC模型309
11.1.2JDBC驱动程序310
11.2JDBC的API接口310
11.2.1DriverManager类311
11.2.2Driver接口311
11.2.3Connection接口312
11.2.4Statement接口312
11.2.5PreparedStatement接口313
11.2.6ResultSet接口314
11.3JDBC连接数据库315
11.3.1加载JDBC驱动程序315
11.3.2建立数据库连接316
11.4MySQL数据库317
11.4.1安装MySQL数据库317
11.4.2使用MySQL数据库322
11.5Java的MySQL数据库编程324
11.5.1连接数据库324
11.5.2查询数据库326
11.5.3数据库的插入328
11.5.4数据库的修改330
11.5.5数据库的删除331
11.5.6使用 PreparedStatement实现预处理333
11.6MySQL数据库的事务处理335
11.6.1事务简介335
11.6.2JDBC中的事务处理335
11.6.3事务处理案例336
11.7本章小结339
11.8习题339
参考文献341
|
內容試閱:
|
Java语言是目前最为流行的面向对象的网络程序设计语言之一。它简单高效、与平台无关、安全、健壮、动态加载,得到了人们广泛的认可,越来越多的高等院校将Java语言列入教学计划,作为学习面向对象程序设计语言的一门基础课程。Java语言的应用很广泛,它不仅可以开发传统的C/S模式的应用程序,而且特别适合开发基于Web的B/S模式的J2EE程序,随着Android平台在手机和智能电视上的快速普及,基于Java的Android App开发正在成为Java语言的另一个重要的应用领域。在不久的将来,Java的应用将更为广泛,如汽车、铁路上的即时控制系统,人工智能游戏,以及军用方面等。可以看到,推动Java最主要的因素就是网络,Java是以网络应用为基础的开发语言,这是它的强大之处。所以,现在很多高校已经开设“Java语言程序设计”课程,并将该课程作为高校计算机专业的骨干课程。
本书的优势如下。
篇章划分: 本书分为四篇。第一篇为Java基本语法,主要讲解Java的基本语法、OOP编程、常用类和集合;第二篇为图形界面设计与I/O处理,首先使用JSWing设计文本编辑器,然后结合文件处理完善文本编辑器;第三篇为Java多线程和网络,设计卖票案例覆盖多线程知识,然后设计TCP和UDP程序覆盖网络和多线程知识,实现多线程服务程序;第四篇为数据库编程,以Java较为常用的MySQL数据库为主介绍Java数据库编程的实现,并设计一个较为完整的案例——学生信息管理系统,从数据库使用、表的创建到Java连接数据库、界面设计、数据的操作,可以作为学生课程设计的学习案例,读者可通过扫描二维码阅读。
案例优先: 本书中的重点章在第一节给出基本能涵盖本章所有知识点的案例,在随后的知识点的论述中贯穿、分析该案例,这样有助于读者融会贯通知识点,在学习知识的同时学会对知识的运用,便于读者理解和巩固所学的知识。
为了便于教师讲解和学生学习,对主要案例程序的代码加上了行号。
课后练习: 每章都配有课后练习,让读者加强对所学知识的运用,如果自己不能解答,在配套教学资源包中还有相应的分析和解答。
本书由安徽工业大学李伟、邰伟鹏和马鞍山学院李洁组织编写,主要章节由李伟、邹红侠、李洁、夏敏、柯栋梁、侯书东编写。感谢胡宏智耐心、认真的指导,感谢唐正凯、朱贤鹏、袁虎的参与和帮助。
本书提供了配套的教学资源,包括电子课件PPT、习题答案参考等,可到清华大学出版社网站下载。
限于编者水平,书中难免存在一些不足,敬请读者批评指正。
作者2024年5月
|
|