新書推薦:
《
快人一步:系统性能提高之道
》
售價:NT$
505.0
《
我们为什么会做梦:让梦不再神秘的新科学
》
售價:NT$
352.0
《
算法图解(第2版)
》
售價:NT$
356.0
《
科学的奇幻之旅
》
售價:NT$
352.0
《
画艺循谱:晚明的画谱与消闲
》
售價:NT$
653.0
《
新民说·现实政治史:从马基雅维利到基辛格
》
售價:NT$
454.0
《
宽容是件奢侈品(人生360度·一分钟经典故事)
》
售價:NT$
203.0
《
甲骨拼合六集
》
售價:NT$
1520.0
編輯推薦:
1.从面向对象的语言走进面向对象的思想:从面向对象分析出发,使用面向对象工具UML类图描述类结构及类与类之间的关系;在系统设计和组织程序架构时,引入面向对象设计中的经典原则和设计模式。2. 使用图表增强文字的表现力:各章都使用思维导图从更高的角度对整章知识、案例进行了梳理,将看似零散的文字浓缩在一张图中,提纲挈领,将知识从点连接成线,再构建为面,立体化。
內容簡介:
本书以Java SE 6为基础,按照从面向对象的语言走进面向对象的思想、利用图表增强文字的表现力、注重知识的原理性的编写思想,详细叙述了Java语言的基础知识,面向对象的封装、类、继承、多态性,Java常用工具类、集合、异常处理,及图形用户界面、多线程、输入输出流、JDBC等内容。本书配备了丰富的实例,并在“综合实践”部分引入较大规模的案例,通过“习题”和“实验指导”环节,为读者提供拓展思维、提升实践能力的训练。各章习题参照了SCJP考试模式,实验题目丰富、实用,有的放矢地提供编程训练。本书可以作为大学本科、专科计算机及相关专业的教材,也可作为Java爱好者、工程技术人员的自学参考书。
目錄 :
前言第1章Java程序设计概述1.1Java程序平台1.2Java的特性1.3Java程序设计环境1.3.1下载、安装和了解JDK1.3.2集成开发环境Eclipse1.4Java应用程序1.4.1Java应用程序的编写1.4.2命令行方式下的编译和运行1.4.3使用Eclipse开发Java程序1.5习题1.6实验指导1.7本章思维导图第2章Java语言基础2.1标识符和关键字2.2基本数据类型与变量、常量2.2.1Java中的整数类型2.2.2Java中的字符类型2.2.3浮点类型2.2.4布尔类型2.2.5符号常量2.3运算符2.3.1算术运算符2.3.2关系运算符和逻辑运算符2.3.3位运算符2.3.4赋值运算符2.3.5运算符的优先级与结合性2.4表达式的类型转换2.4.1数据类型自动转换的规则2.4.2强制类型转换2.5流程控制2.5.1if语句2.5.2switch语句2.5.3while循环语句2.5.4for循环语句2.5.5dowhile循环语句2.5.6break语句2.5.7循环的嵌套2.6方法2.6.1方法的定义2.6.2方法的重载2.7综合实践——简易算术计算器2.8习题2.9实验指导2.10本章思维导图第3章数组3.1声明数组3.2创建数组对象3.3使用数组3.3.1数组元素的引用3.3.2Java方法中的不定长参数与数组3.4多维数组3.4.1二维数组的声明和创建3.4.2不规则二维数组3.4.3二维数组元素的引用3.5Java中的for each循环3.6Arrays类3.6.1sort方法3.6.2copyOf方法3.7综合实践——学生成绩查询系统3.7.1查询系统的数据结构3.7.2模块化设计3.7.3控制台命令的读取和控制run3.7.4查询某人某门课成绩get3.8习题3.9实验指导3.10探究与实践——两人对弈的五子棋游戏3.11本章思维导图第4章封装与类4.1封装的意义4.2定义类4.2.1面向对象的分析4.2.2使用class定义类4.3对象和引用4.3.1对象和引用的关系4.3.2this引用4.4方法的参数传递4.5关于static4.5.1static成员4.5.2变量的使用规则4.5.3static代码块4.5.4类常量的定义4.6包4.6.1包的创建4.6.2类的导入4.6.3含包定义的类的编译及执行4.6.4classpath环境变量的设置4.6.5Eclipse下创建package4.7综合实践——酒店前台客房管理系统4.7.1类的设计——组合关系4.7.2客房编号的处理方法4.7.3Room类设计4.7.4Hotel类设计4.7.5客户端Client类实现4.8习题4.9实验指导4.10本章思维导图第5章类的继承5.1继承5.1.1继承的概念5.1.2继承的实现5.1.3类成员的访问控制5.2重写父类方法5.2.1重写及其意义5.2.2Object类与重写toString方法5.2.3调用父类被重写的方法5.2.4Object类的clone方法与深、浅复制5.3子类对象的构造5.3.1子类对象的构造过程5.3.2super与this调用构造方法5.4Java修饰符5.4.1final修饰符5.4.2Java修饰符之间的关系5.5继承和组合5.5.1继承复用5.5.2组合复用5.6习题5.7实验指导5.8本章思维导图第6章多态性6.1多态6.1.1多态性6.1.2静态绑定和动态绑定6.1.3instanceof运算符6.2抽象类6.2.1抽象类及抽象方法的定义6.2.2为什么设计抽象类6.2.3开闭原则6.3接口6.3.1接口的定义和实现6.3.2接口与抽象类的区别6.4面向接口的编程6.4.1案例分析6.4.2面向接口编程的代码组织6.5综合实践——格式化输出学生对象数据6.5.1系统架构6.5.2面向接口编程的代码6.6习题6.7实验指导6.8思维导图6.8.1本章思维导图6.8.2面向对象部分思维导图第7章常用工具类7.1字符串处理类7.1.1Java中String对象的管理7.1.2String类的常用方法7.1.3StringBuilder和StringBuffer类7.2正则表达式7.2.1正则表达式的语法7.2.2String类中操作正则表达式的方法7.3包装类7.3.1Integer类7.3.2自动封箱和解封7.4日期类7.4.1Date类7.4.2Calendar类7.4.3SimpleDateFormat类7.4.4阅读API文档7.5习题7.6实验指导7.7本章思维导图第8章集合8.1Java中的集合框架8.1.1集合框架的常用部分8.1.2迭代器Iterator接口8.2List及其实现类8.2.1List接口8.2.2ArrayList8.2.3LinkedList8.3Set及其实现类8.3.1Set接口8.3.2HashSet8.3.3TreeSet8.4Map及其实现类8.4.1Map接口8.4.2HashMap8.4.3Hashtable及其子类Properties8.5泛型8.5.1泛型的意义8.5.2认识和使用泛型8.6Collections集合工具类8.6.1List的增补功能8.6.2多线程封装8.7回首Java集合框架8.8综合实践——控制台版考试系统8.8.1类的设计8.8.2代码8.9习题8.10实验指导8.11本章思维导图第9章异常处理9.1Java异常体系9.2异常的捕获和处理9.2.1trycatchfinally语句9.2.2trycatchfinally语句的执行过程9.3使用throws抛出异常9.4自定义异常类9.4.1自定义异常类的方法9.4.2throw抛出异常9.4.3异常处理的5个关键字9.5综合实践——用户管理系统及其异常类设计9.5.1系统设计9.5.2自定义异常类9.5.3UserDaoForMap类9.5.4Application类9.5.5Test类9.6习题9.7实验指导9.8本章思维导图第10章图形用户界面与事件处理10.1AWT组件及应用10.1.1AWT和Swing概述10.1.2AWT组成10.1.3AWT的容器10.1.4布局管理器10.2事件处理10.2.1事件处理的原理10.2.2利用成员内部类实现事件监听10.2.3利用匿名内部类实现事件监听10.2.4适配器模式实现事件监听10.2.5实现计算器的功能部分10.3Swing组件10.4综合实践——用户管理系统与常用Swing组件的应用10.4.1主界面与Swing组件的应用10.4.2注册界面与Swing组件的应用10.4.3浏览用户界面与JTable组件的应用10.5习题10.6实验指导10.7本章思维导图第11章多线程11.1线程的概念11.2线程的创建和执行11.2.1继承Thread类创建线程11.2.2实现Runnable接口创建线程11.3线程的状态与生命周期11.3.1新建和就绪状态11.3.2运行状态11.3.3阻塞状态11.3.4死亡状态11.4线程优先级与线程调度策略11.5线程同步11.5.1数据共享问题11.5.2同步和锁机制11.5.3同步代码块11.5.4同步方法11.5.5线程安全的集合类11.6线程间的通信11.6.1wait和notify方法11.6.2消费者和生产者模型11.6.3使用BlockingQueue控制线程通信11.7习题11.8实验指导11.9本章思维导图第12章输入输出流12.1Java流的类层次结构12.2文件12.2.1File类12.2.2RandomAccessFile类12.3字节流12.3.1抽象类InputStream和OutputStream12.3.2文件流FileInputStream和FileOutputStream12.3.3缓冲流BufferedInputStream和BufferedOutputStream12.3.4数据过滤流DataInputStream和DataOutputStream12.3.5打印流PrintStream12.3.6序列化接口Serializable与对象流ObjectInputStream和ObjectOutputStream12.3.7字节数组流ByteArrayInputStream和ByteArrayOutputStream12.4字符流12.4.1抽象类Reader和Writer12.4.2转换流InputStreamReader和OutputStreamWriter12.4.3FileReader和FileWriter12.4.4BufferedReader类12.4.5PrintWriter类12.5输入输出流汇总12.6习题12.7实验指导12.8本章思维导图第13章数据库访问技术13.1MySQL数据库与SQL语法13.1.1MySQL数据库的安装13.1.2MySQL数据库的常用命令13.1.3SQL语句13.2JDBC的体系结构和JDBC驱动程序的实现方式13.2.1JDBC的体系结构13.2.2JDBC驱动程序的实现方式13.3建立JDBC数据库连接13.3.1JDBC API的主要类和接口13.3.2连接数据库13.4使用JDBC访问数据库13.4.1Statement与数据表的增、删、改13.4.2PreparedStatement与数据表的增、删、改13.4.3数据表的查询与ResultSet13.5综合实践——数据库访问的开发模式13.5.1基于数据库存储的用户管理系统13.5.2业务层——封装DAO中的方法13.5.3应用层——调用业务层方法完成系统功能13.6习题13.7实验指导13.8探究与实践——用户管理系统的权限管理13.9本章思维导图参考文献
內容試閱 :
Java语言的生命力毋庸置疑,1991年由Sun公司(后被Oracle公司收购)开发。2014年,Java发布了Java SE 8版本,它以优秀的性质驰骋在各个领域,以开源建设的方式不断地为其注入新鲜血液。思考了许久怎样写此书才能打好Java的根基,为今后Struts、Spring、EJB等的学习奠定坚实的基础;如何能让年轻的学习者们轻松、高效地完成学习,不会感觉代码是枯燥冰冷的字符,而是悦动在指尖的一串串的音符…。带着让学习者以享受的姿态步入Java程序员行列的希冀,最终确定了如下编写思想。(1)从面向对象的语言走进面向对象的思想任何一门计算机语言的学习都不仅仅是熟知语法的过程。计算机语言的语法就如音乐中的音符,它们会在不同人的笔下诞生奇妙的乐谱,那是作曲家赋予音符的灵魂。面向对象的思想就是面向对象语言的灵魂。本书在讲述Java语法知识的同时,更注重面向对象思想的学习和贯彻。从面向对象分析出发,使用面向对象工具UML类图描述类结构及类与类之间的关系;在系统设计和组织程序架构时,引入面向对象设计中的经典原则和设计模式。从学习伊始就培养面向对象的视角和规范的编程方式,不仅要写出代码,而且要写出专业、漂亮的代码。(2)使用图表增强文字的表现力相对于文字而言,图可以更形象、立体地展示知识及彼此间的联系,表可以梳理、对比相关、相似的知识点。相信读者间都会有一种共识,如果面对一份长篇大论,那么你的关注点首先会集中到穿插在文字中的图或表,因为从图表中可以快速提取到文字的主旨、脉络和精华;而且我也在猜想,从小看漫画长大的年轻一代会对图表具有更高的敏感度。本书尽可能地为抽象、不易单纯通过语言表述清楚、信息量大、知识庞杂的部分设计了图表,力求简明扼要地展示知识结构。另外,本书各章都使用思维导图从更高的角度对整章知识、案例进行了梳理,将看似零散的文字浓缩在一张图中,提纲挈领,将知识从点连接成线,再构建为面,最终立体化,达到读书“从物理上将书变厚,从逻辑上将书变薄”的效果。(3)知其然亦知其所以然坚实的基础是进阶的基石。本书注重知识背后隐藏的原理和细节,培养读者从why和how的角度构建学习的习惯,使学习不仅知其然,更能做到知其所以然,以扎实的基本功为后续的学习打好根基。本书架构如下:本书由宋晏、杨国兴主编,胡倩茹(河北大学)、陈晓美副主编,参加编写工作的还有刘勇、严婷、吕东艳、朱红、张子萍、张小静。由于时间仓促,书中难免有疏漏和不足之处,敬请广大读者批评指正。