您好,欢迎光临有路网!
软件是这样“炼”成的——Java学习全演练
QQ咨询:
有路璐璐:

软件是这样“炼”成的——Java学习全演练

  • 作者:王朔韬
  • 出版社:清华大学出版社
  • ISBN:9787302479291
  • 出版日期:2018年11月01日
  • 页数:377
  • 定价:¥79.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    本书的定位是针对Java学习中有案例式参考资料需求的读者。全书选用易于理解的“学籍管理软件”作为案例,讲解Java的核心知识点及应用场景。从文字组织到书的结构设计,既不是以理论为主调的“学院派”编写方法,也不是以应用介绍为主调的“应用派”编写格调,而采用了情景对话、场景在线的方式,解决读者在学习Java过程中所感觉到的知识点的零散性和应用场景不清楚的状况。将Java知识点体系化和系统化,以案例驱动的编写方法实现了“边学边用,边用边做”的Java学习思路。
    本书适合于从事软件开发的管理人员、系统分析师、架构师和程序员阅读,也可以作为大学计算机相关专业学习Java课程的项目实训教材。
    文章节选
    3.1关于JDK的讨论
    晨落: 今天我们讨论Java JDK。我是1998年**次接触Java开发工具(Java Development Kit,JDK)的,Java的一些特点吸引了我,因为Java的一大特点是平台无关性,也就是说一处编译处处运行。对于程序员来说,能够深深地体会到这个福音给我们带来的是什么,可以做到编程不考虑操作系统,太令人振奋了。Java的另外一个特点是面向对象的开发方法,当时面向对象的开发方式不是主流开发方法,所以我出于好奇开始学习了Java。
    洪杨俊: 然后呢?
    晨落: 当时,很少有Java方面的书籍,我好不容易找来JDK和Java的一些帮助文件以及JDK自带的Java源程序代码。我仔细阅读Java帮助文件并结合JDK源程序代码,发现有许多奥妙在里面。通过阅读帮助文件和源代码能够知道Java JDK背后的故事,在使用任何一个Java函数的时候,Java帮助我们完成了一系列的工作,让我们的编程工作量大大减少。
    洪杨俊: 你是如何学习Java的?
    晨落: JDK在我们安装的JDK路径下,例如,“我的电脑”是安装在“C: \Program Files\Java\jdk1.6.0_10 ”下,在该路径下有个文件SRC.ZIP,解包后将会发现文件夹的文件夹结构内容与JDK包完全一致。
    洪杨俊: 这些代码和JDK类库中的实现是一致的吗?
    晨落: 是完全一致,类库中的.class文件其实就是用这些源代码文件编译生成的。
    洪杨俊: 在Java学习中用到的数据类型、函数、方法等都能够找到其对应Java源代码吗?
    晨落: 是的,完全可以找到,例如,我们在Java中定义的数据类型Integer,就在“\src\Java\lang\Integer.Java”这个类文件中。打开类文件可以读到关于Integer的相关Java代码实现,如图31所示。


    图31Integer类的Java代码



    通过图31可以看出,关于Integer的Java类是如何实现的,例如,在不少教材中描述Integer数据的取值范围是-2147483648到2147483648,在源代码中可以找到相应的方法,以实现这个数据范围的校验。图32中的代码就是Integer*大值和*小值的判断处理代码片段。


    图32Integer类型*大值和*小值的代码实现


    洪杨俊: 这么多类库和函数,难道您全部阅读了吗?
    晨落: 哈哈,不可能的事,我告诉你的意思是,我们需要了解Java的实现机制,JDK中所包含的主要类库有哪些,至少在学习Java的时候能够明确JDK类库,必要时分析源代码,理解Java中的相关类库的使用方法。
    洪杨俊: 如何划分?你可以帮我列出重要的部分吗?
    晨落: 我将Java基础阶段需要掌握的Java类库做了个总结,并且以树形结构的形式表现出来,如图33所示。只要我们能够按照这个树形图归纳出这些包中包含的类,知道它们能够完成哪些功能,并在开发过程中快速地查询这些函数的使用就足够了。


    图33Java JDK结构图


    洪杨俊: 有特别说明吗?
    晨落: 有以下几个包需要熟悉使用,即Java.lang、Java.util、Java.sql、Javax.sql和Java.io,其他包在使用时能很快检索就行。总之,通过了解这些类库,能够帮助人们快速学习Java。
    3.2JDK基础类型介绍
    JDK提供利用Java编程语言进行程序设计的基础类。*重要的类是Object(它是类层次结构的根)和Class(它的实例表示正在运行的应用程序中的类)。
    把基本类型的值当成一个对象来表示通常很有必要。包装器类Boolean、Character、Integer、Long、Float和Double就是用于这个目的。例如,一个Double类型的对象包含了一个类型为Double的字段,这表示如果引用某个值,则可以将该值存储在引用类型的变量中。这些类还提供了大量用于转换基值的方法,并支持一些标准方法,例如equals和hashCode。Void类是一个非实例化的类,它保持一个对表示基本类型Void的Class对象的引用。
    类Math提供常用的数学函数,比如正弦、余弦和平方根。类似地,类String和StringBuffer提供常用的字符串操作。
    类ClassLoader、Process、Runtime、SecurityManager和System提供了管理类的动态加载、外部进程创建、主机环境查询(比如时间)和**策略实施等“系统操作”。
    类Throwable包含可能由throw语句抛出的对象。Throwable的子类表示错误和异常。
    JDK源代码路径为“SRC\Java\lang”。
    目录
    目录


    第1章何为面向对象

    1.1面向对象的基础知识

    1.2面向对象的核心概念

    1.2.1对象

    1.2.2类

    1.2.3继承

    1.2.4接口

    1.2.5封装与透明

    1.2.6多态

    1.2.7组合

    1.2.8绑定

    1.2.9消息

    1.3类间关系

    1.3.1关联

    1.3.2聚合

    1.3.3继承

    1.3.4实现

    1.3.5依赖

    1.3.6包

    1.4本章小结

    第2章Java是什么

    2.1Java程序设计语言

    2.1.1什么是程序设计语言

    2.1.2程序设计语言发展历史

    2.2Java发展历史

    2.3Java跨平台原理

    2.3.1**程序编译原理

    2.3.2Java跨平台原理

    2.3.3Java的特点

    2.4Java开发环境搭建

    2.4.1JDK安装

    2.4.2MyEclipse介绍及安装

    2.5本章小结

    第3章JDK API介绍

    3.1关于JDK的讨论

    3.2JDK基础类型介绍

    3.3数据集合及日期处理

    3.4输入输出流

    3.5ZIP压缩工具

    3.6JAR归档工具

    3.7日志工具

    3.8网络编程

    3.8.1地址

    3.8.2套接字

    3.8.3接口

    3.8.4**API

    3.9用户界面(Java.awt)

    3.9.1Java.awt介绍

    3.9.2其他包介绍

    3.10Java.swing

    3.11数据库操作

    3.11.1Java.sql

    3.11.2Javax.sql

    3.12本章小结

    第4章规范Java编程

    4.1关于编程规范的讨论

    4.2帮助文件范例

    4.2.1版本信息

    4.2.2字段概要

    4.2.3方法及构造方法摘要

    4.2.4字段详细信息

    4.2.5方法或构造方法详细
    信息

    4.3Java编程规范

    4.3.1排版规范

    4.3.2注释规范

    4.3.3命名规范

    4.3.4编码规范

    4.4JavaDoc文档

    4.4.1JavaDoc介绍

    4.4.2JavaDoc标记

    4.4.3JavaDoc命令的用法

    4.5本章小结

    第5章本书**案例说明

    5.1案例假设

    5.2用户资料整理

    5.3实现功能

    5.3.1学校信息维护

    5.3.2学院信息查询

    5.3.3系信息查询

    5.3.4系分专业学生名录

    5.3.5系分专业综合成绩排名

    5.3.6关于学生信息维护

    5.4“学籍管理软件”在本书中的应用

    5.5不可思议的代码

    第6章Java源程序组成

    6.1Java源程序包含的基本内容

    6.1.1包

    6.1.2类定义

    6.1.3方法定义

    6.1.4数据成员

    6.2使用JDK编译和运行程序

    6.2.1编译Java源文件

    6.2.2运行Java程序

    6.3代码展示——类初步规划

    6.3.1案例分析

    6.3.2部分代码展示

    6.4代码解析

    6.4.1代码分析

    6.4.2进程检查

    6.5本章小结

    第7章探讨类数据成员——数据
    类型
    7.1基本数据类型

    7.1.1基本概念

    7.1.2详细说明

    7.1.3简单数据类型的转换

    7.1.4Java中的高精度数

    7.2引用类型

    7.3变量和常量

    7.3.1变量

    7.3.2常量

    7.3.3变量的作用范围

    7.3.4静态变量的生命周期

    7.3.5对象的默认引用
    ——this关键字

    7.4参数传递

    7.5“学籍管理软件”数据类型设计

    7.5.1JDK Java包引用分析

    7.5.2“学籍管理软件”数据类型
    与变量设计

    7.6代码实现

    7.6.1“学籍管理软件”中全局
    变量校验实现

    7.6.2部分代码摘录

    7.7进程检查

    7.8本章小结

    第8章类方法成员——操作符

    8.1运算符

    8.1.1算术运算符

    8.1.2关系运算符

    8.1.3逻辑运算符

    8.1.4位运算符

    8.1.5其他运算符

    8.1.6运算符的优先级

    8.2Java修饰符

    8.3“学籍管理软件”运算符应用
    分析

    8.3.1关于业务规则讨论

    8.3.2部分实现代码摘录

    8.4进程检查表

    8.5本章小结

    第9章探讨类方法成员——流程
    控制
    9.1流程控制

    9.2条件转换语句

    9.2.1if 语句

    9.2.2ifelse

    9.2.3ifelse if语句

    9.2.4if语句的嵌套

    9.2.5switch语句

    9.3循环语句

    9.3.1for循环语句

    9.3.2while循环语句

    9.3.3do while循环语句

    9.3.4循环语句的嵌套

    9.3.5转移语句

    9.4“学籍管理软件”案例分析运行流程
    控制

    9.4.1“学籍管理软件”运行
    流程

    9.4.2类优化设计

    9.5“学籍管理软件”业务数据校验
    代码展示

    9.6进程检查

    9.7本章小结

    第10章异常处理及应用

    10.1Java异常处理机制

    10.2用户异常定义

    10.3Java异常分类

    10.3.1可检测异常

    10.3.2非检测异常

    10.3.3自定义异常

    10.4异常处理

    10.4.1Java异常处理方法

    10.4.2异常声明及抛出异常

    10.5“学籍管理软件”异常设计

    10.5.1关于异常的探讨

    10.5.2“学籍管理软件”流程优化
    ——异常思考

    10.6“学籍管理软件”异常设计实现类
    代码分析

    10.6.1“学籍管理软件”
    类优化

    10.6.2异常设计代码实现

    10.7进程检查表

    10.8本章小结

    第11章类间关系之继承应用

    11.1继承设计的基本流程

    11.2方法重载

    11.3方法覆盖

    11.4super关键字

    11.5“学籍管理软件”优化设计

    11.5.1关于继承的讨论

    11.5.2类间关系优化设计
    ——继承的思想

    11.5.3程序运行流程——重载
    的思想

    11.5.4异常处理——继承
    的思想

    11.6部分程序代码——继承及重载
    的思想

    11.6.1父类——学校信息
    维护

    11.6.2子类——学院信息
    维护

    11.6.3父类与子类的整合——
    学生信息维护页面

    11.6.4重载方法——统计分析
    类框架代码

    11.7继承及重载优化进程检查

    11.8本章小结

    第12章类间关系之抽象类与
    接口应用
    12.1抽象类

    12.2接口

    12.2.1接口的概念

    12.2.2接口的实现

    12.3接口与抽象类

    12.4多态

    12.5“学籍管理软件”优化设计

    12.6“学籍管理软件”接口及接口
    实现代码

    12.6.1业务查询接口
    (bussinessSearch)

    12.6.2数据删除接口
    (bussinessDelete)

    12.6.3统计分析类
    (bussinessStatistics)

    12.6.4信息查询类(bussiness
    LogicListSearch)

    12.7进程检查——类抽象与接口
    应用

    12.8本章小结

    第13章Java数据结构之数组

    13.1一维数组创建

    13.2一维数组元素访问

    13.3二维数组创建

    13.4二维数组元素访问

    13.5本章小结

    第14章Java数据结构之常用集合

    14.1Java集合概述

    14.2Collection接口和Iterator接口

    14.2.1AbstractCollection
    抽象类

    14.2.2Iterator 接口

    14.2.3Collection接口支持的
    其他操作

    14.3Set

    14.3.1HashSet类和
    TreeSet类

    14.3.2AbstractSet类

    14.4List

    14.4.1ListIterator接口

    14.4.2ArrayList 类和
    LinkedList类

    14.5Map

    14.5.1Map接口概述

    14.5.2Map.Entry接口

    14.5.3SortedMap接口

    14.5.4AbstractMap抽象类
    ——Abstrac

    14.5.5HashMap类和
    TreeMap类

    14.5.6LinkedHashMap类

    14.5.7Map例程

    14.6本章小结

    第15章数据结构在“学籍管理软件”
    中的应用
    15.1关于Java集合的讨论

    15.2“学籍管理软件”数据
    结构设计

    15.2.1数据分析

    15.2.2数据结构设计

    15.3类优化

    15.4查询算法设计

    15.5“学籍管理软件”数据结构代码
    实现

    15.5.1学生名单排序实体

    15.5.2考试成绩排序

    15.6进程检查——数据结构完善

    第16章数据输入输出——Java IO流

    16.1Java数据流概述和Java.IO

    16.1.1流的概念

    16.1.2Java.IO包

    16.2InputStream与
    OutputStream类

    16.2.1InputStream类

    16.2.2OutputStream类

    16.3File类

    16.3.1File类的构造函数

    16.3.2File类举例

    16.4文件输入与输出

    16.4.1FileInputStream类和
    FileOutputStream类

    16.4.2FileInputStream和
    FileOutputStream在“学籍
    管理软件”中的应用

    16.4.3随机文件的读取
    RandomAccessFile类

    16.5标准输入和输出

    16.5.1System.in对象

    16.5.2System.out对象

    16.5.3数据类型的转换

    16.6本章小结

    第17章数据存储与读取在“学籍
    管理软件”中的应用
    17.1数据存储及文件规划

    17.1.1数据存储说明

    17.1.2数据表间关系

    17.1.3表结构设计

    17.2类优化设计

    17.3程序流程优化

    17.4数据保存及查询

    17.4.1数据保存

    17.4.2数据读取

    17.5Java IO异常处理

    17.6数据存储与读取代码实现

    17.6.1文件管理

    17.6.2数据保存

    17.6.3多记录查询

    17.7数据读取与存储实现进程检查

    17.8本章小结

    第18章Java图形界面在“学籍管理
    软件”中的应用
    18.1用AWT生成图形化用户界面

    18.2组件

    18.3容器

    18.4事件处理

    18.4.1事件类

    18.4.2事件监听器

    18.4.3AWT事件相应的监听器
    接口

    18.4.4事件适配器

    18.**WT组件库

    18.6“学籍管理软件”页面设计

    18.6.1页面构成

    18.6.2主界面程序代码

    18.6.3维护页面button影响
    矩阵图

    18.7案例进程

    18.8本章小结

    第19章Java Swing在“学籍管理
    软件”中的应用
    19.1Java Swing介绍

    19.2Javax主要控件介绍

    19.2.1AbstractButton

    19.2.2ButtonGroup

    19.2.3JApplet

    19.2.4JButton

    19.2.5JCheckBox和
    JRadioButton

    19.2.6JComboBox

    19.2.7JScrollPane

    19.2.8JTable

    19.2.9JTextField

    19.2.10JTextArea

    19.2.11JTree

    19.3基于Java Swing优化“学籍
    管理软件”设计

    19.3.1基于MVC设计模式设计
    “学籍管理软件”

    19.3.2类图优化设计——
    基于MVC

    19.3.3“学籍管理软件”页面
    设计实现代码摘录

    19.4“学籍管理软件”案例
    进程检查

    19.5本章小结

    第20章多线程简述

    20.1Java多线程

    20.2Java多线程的5种基本状态

    20.3Java多线程的创建及启动

    20.3.1继承Thread方法创建线
    程并启动线程

    20.3.2使用Runnable接口来
    创建并启动线程

    20.3.3使用 ExecutorService、
    Callable和Future创建
    线程

    20.4Java多线程的优先级和调度

    20.5多线程的线程控制

    20.6线程的同步

    20.6.1同步代码块

    20.6.2同步方法

    20.6.3使用特殊域变量(volatile)
    实现线程同步

    20.6.4使用重入锁实现
    线程同步

    20.6.5使用局部变量实
    现线程同步

    20.7线程间的通信

    20.7.1线程间的通信

    20.7.2线程通信的其他几个
    常用方法

    20.8本章小结

    第21章Java学习历程回顾

    参考文献

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外