书籍详情
JAVA RULES中文版
作者:(美)道格拉斯·邓恩(Douglas Dunn)著;(美)JavaResearch.org译;JavaResearch.org译
出版社:中国电力出版社
出版时间:2003-11-01
ISBN:9787508318011
定价:¥46.00
购买这本书可以去
内容简介
对于希望精通Java编程语言复杂细节的应用程序员来说,本书是一本全面的参考书,内容详尽,深入浅出。本书彻底地讲述了Java编程语言和Java虚拟机(JVM)的核心细节,使读者能够有效地深入理解Java平台。基于Java语言规范的第二版和Java虚拟机规范,本书以更加友好的教程风格,展现了这些规范的一个子集。从平台基础到API,这本百科全书式的指南全面地展示了Java语言的方方面面——包括以前没有文档化的一些特性。实用的指导遍布全书,都由官方的语言文档或权威技术领导者们的真知灼见所支持。独特的编排、对话式的风格,使本书成为对Java语言有一定了解,寻求精通捷径的程序员的理想读物。DouglasDunn是一位Java编程顾问,拥有超过10年主流商业应用开发的经验。目前,他正在撰写本书的附加卷。
作者简介
Douglas Dunn是一位Java编程顾问,拥有超过10年主流商业应用开发的经验。目前,他正在撰写本书的附加卷。
目录
译者序
前言
关于本书
Java传统
第1章 词法结构
1.1 简介
1.2 空白
1.2.1 缩进
1.3 注释
1.3.1 注释掉大块代码
1.4 标识符
1.4.1 Java命名惯例
1.5 关键字
1.6 直接量
1.6.1 字符直接量
1.6.2 转义序列
1.6.3 字符串直接量
1.6.4 数值直接量
1.6.5 类直接量
1.7 分隔符
1.8 操作符
第2章 编译单元
2.1 引言
2.2 类体声明中的术语
2.2.1 Java中对成员变量的定义
2.2.2 在源代码中识别构造方法
2.3 编译单元的剖析
2.3.1 专用初始化方法
2.3.2 原文顺序
2.3.3 惟一public包成员的限制
2.4 包声明
2.4.1 包名
2.4.2 包的成员
2.4.3 使用SDK创建包
2.5 导入声明
2.5.1 自动导入
2.5.2 冗余导入
2.5.3 各种嵌套类的导入(顶层类或内部类)
2.5.4 编译器对导入语句的解析
2.5.5 按需类型导入声明的效能
2.6 类型声明
2.6.1 类的类型声明
2.6.2 接口类型声明
2.7 顶层类的定义
2.8 辅助类并没有根本性的不同
2.8.1 不使用辅助类的技术争论
2.9 类和接口的五种分类
2.9.1 public的顶层类
2.9.2 非public的成员类
2.9.3 局部类和匿名类
2.9.4 嵌套的接口
2.10 选择使用不同类型的类
2.10.1 从VectorEnumerator到匿名类
2.11 容器和内部类层次的基本原理
2.12 容器和内部类层次
2.12.1 容器层次
2.12.2 内部类层次
第3章 static修饰符.this和super
3.1 简介
3.2 static修饰符
3.2.1 static成员变量
3.2.2 static方法
3.2.3 static类
3.3 static上下文的定义
3.3.1 内部类层次中的static上下文
3.4 this和super关键字
3.4.1 当前对象(this)
3.4.2 直接超类(super)
3.5 this和super关键字的实际用法
3.5.1 使用super引用不同的包中的成员
3.6 多个当前实例 (又名层级)
3.6.1 深度嵌套类型的一个注意事项
3.6.2 限定this关键字
3.6.3 限定new关键字
3.6.4 限定super关键字
第4章 原始数据类型和Object类
4.1 简介
4.2 数据类型定义
4.2.1 作为数值集的数据类型
4.2.2 面向对象的类型定义
4.3 数值(Numeric)数据类型
4.3.1 整数类型
4.3.2 浮点类型
4.3.3 理解浮点类型
4.4 字符(char)数据类型
4.5 布尔(boolean)数据类型
4.6 空(null)类型
4.7 Number类
4.8 java.math包
4.8.1 BigInteger类
4.8.2 BigDecimal类
4.9 货币计算
4.9.1 不精确的结果和比较运算符
4.9.2 浮点操作结果凑整
4.9.3 用整数类型存储货币值
4.10 原始数据类型的包装器(Wrapper)类
4.10.1 字符串的基本类型值解析
4.10.2 把原始数值类型转换成字符串
4.10.3 位模式操作
4.10.4 访问原始数据类型的系统属性
4.10.5 Unicode工具方法
4.11 Object类
4.11.1 引用相等vs.等价关系
4.11.2 解散列表(Hash Table)
4.11.3 五个内务(Housekeeping)方法
4.12 比较方法
4.12.1 什么是默认顺序?
4.12.2 什么是自然顺序?
4.12.3 倒序(递减)排序
4.12.4 根据一个以上的成员变量排序
4.12.5 Comparable接口
4.12.6 Comparator接口
第5章 字符串和其他通用数据类型
5.1 简介
5.2 可以进行修改操作的方法
5.3 String或StringBuffer的长度
5.4 StringBuffer的容量
5.4.1 StringBuffer容量的确定
5.5 String索引
5.5.1 String和StringBuffer的右开区间
5.6 String和StringBuffer类中的已检查异常
5.7 String类
5.7.1 大小写映射
5.7.2 字符串比较
5.7.3 访问单个字符或子字符串
5.7.4 char[]和String之间的相互转换
5.7.5 转换本地编码的字符串
5.7.6 String类的杂项方法
5.7.7 String类中的特殊构造方法
5.8 StringBuffer类
5.8.1 重载的方法append和insert
5.8.2 StringBuffer类中的其他方法
5.9 其他和字符串相关的类
5.9.1 StringCharacterIterator类
5.9.2 StringReader和StringWriter类
5.10 词法分析
5.10.1 BreakIterator类
5.10.2 StringTokenizer类
5.10.3 StreamTokenizer类
5.11 字符串连接操作
5.11.1 重载的二元+操作符的一个注意事项
5.11.2 隐含的字符串转换
5.11.3 内置机制
5.11.4 共享字符缓冲区
5.12 在应用平台上显示诊断信息
5.12.1 标准I/O
5.12.2 输出和println方法
5.13 Locale类
5.13.1 默认的区域
5.13.2 能够支持的区域
5.14 Date类
5.14.1 日期比较
5.15 Gregorian Calendar类
5.15.1 实例化GregorianCalendar类
5.15.2 矛盾的成员变量优先规则
5.15.3 最大DAY_OF_MONTH规则
5.16 Calendar类中的日期和时间成员变量
5.16.1 日期和时间成员变量的标准默认值
5.16.2 格式化日期和时间成员变量
5.16.3 日期和时间成员变量的操作方法
5.17 TimeZone类
5.18 理解i 18n和l 10n的不同
5.19 通用数据类型的本地化过程
5.19.1 数字的格式化
5.19.2 格式化日期和时间
第6章 数组和集合框架
6.1 介绍
6.2 数组.组件和元素类型
6.3 数组
6.3.1 for循环的标准格式
6.3.2 数组类是动态创建的
6.3.3 数组类型的成员
6.3.4 数组类型变量声明
6.3.5 初始化数组类型变量
6.3.6 数组访问表达式
6.4 忧愁河上的桥(toArray方法)
6.5 无类型引用和参数化类型
6.5.1 什么是运行时类型?
6.6 时间复杂性(或大-O表示法)
6.6.1 常数时间操作
6.6.2 折合常数时间
6.6.3 对数时间
6.6.4 线性时间
6.6.5 二次方时间
6.7 等价关系和元素
6.8 重复元素
6.8.1 用可变对象作为集的元素或映射的键
6.9 集合框架
6.9.1 批操作
6.9.2 最大普遍性原理
6.9.3 Collection接口
6.9.4 Map接口
6.9.5 容器的内务方法
6.10 通用实现
6.10.1 选择一个通用实现
6.10.2 通用实现的性能优化
6.11 专用实现
6.11.1 WeakHashMap
6.12 视图
6.12.1 同步视图
6.12.2 不可修改的视图
6.12.3 范围视图(子列表, 子集和子映射)
6.12.4 映射的集合视图
6.12.5 数组的列表视图
6.13 迭代器
6.13.1 列表迭代器
6.13.2 用集合视图迭代映射
6.13.3 笨人的集合
6.13.4 同步迭代器
6.13.5 fail-fast迭代器
6.13.6 用TreeSet或TreeMap向后迭代
6.14 Al-Khwarizmi是关于估算的印度艺术
6.15 Arrays和其他Collections的方法
6.15.1 集合排序
6.15.2 查找
6.15.3 克隆和拷贝容器
6.15.4 重组
6.15.5 填充
6.15.6 最小元素和最大元素
6.15.7 便利实现
6.15.8 数组的equals方法
6.16 核心集合接口的定制实现
6.16.1 抽象实现
6.16.2 可选操作
6.16.3 受限容器
6.16.4 标准构造方法
6.17 多映射和多维数组
6.17.1 多映射
6.17.2 多维数组
6.18 传统容器
前言
关于本书
Java传统
第1章 词法结构
1.1 简介
1.2 空白
1.2.1 缩进
1.3 注释
1.3.1 注释掉大块代码
1.4 标识符
1.4.1 Java命名惯例
1.5 关键字
1.6 直接量
1.6.1 字符直接量
1.6.2 转义序列
1.6.3 字符串直接量
1.6.4 数值直接量
1.6.5 类直接量
1.7 分隔符
1.8 操作符
第2章 编译单元
2.1 引言
2.2 类体声明中的术语
2.2.1 Java中对成员变量的定义
2.2.2 在源代码中识别构造方法
2.3 编译单元的剖析
2.3.1 专用初始化方法
2.3.2 原文顺序
2.3.3 惟一public包成员的限制
2.4 包声明
2.4.1 包名
2.4.2 包的成员
2.4.3 使用SDK创建包
2.5 导入声明
2.5.1 自动导入
2.5.2 冗余导入
2.5.3 各种嵌套类的导入(顶层类或内部类)
2.5.4 编译器对导入语句的解析
2.5.5 按需类型导入声明的效能
2.6 类型声明
2.6.1 类的类型声明
2.6.2 接口类型声明
2.7 顶层类的定义
2.8 辅助类并没有根本性的不同
2.8.1 不使用辅助类的技术争论
2.9 类和接口的五种分类
2.9.1 public的顶层类
2.9.2 非public的成员类
2.9.3 局部类和匿名类
2.9.4 嵌套的接口
2.10 选择使用不同类型的类
2.10.1 从VectorEnumerator到匿名类
2.11 容器和内部类层次的基本原理
2.12 容器和内部类层次
2.12.1 容器层次
2.12.2 内部类层次
第3章 static修饰符.this和super
3.1 简介
3.2 static修饰符
3.2.1 static成员变量
3.2.2 static方法
3.2.3 static类
3.3 static上下文的定义
3.3.1 内部类层次中的static上下文
3.4 this和super关键字
3.4.1 当前对象(this)
3.4.2 直接超类(super)
3.5 this和super关键字的实际用法
3.5.1 使用super引用不同的包中的成员
3.6 多个当前实例 (又名层级)
3.6.1 深度嵌套类型的一个注意事项
3.6.2 限定this关键字
3.6.3 限定new关键字
3.6.4 限定super关键字
第4章 原始数据类型和Object类
4.1 简介
4.2 数据类型定义
4.2.1 作为数值集的数据类型
4.2.2 面向对象的类型定义
4.3 数值(Numeric)数据类型
4.3.1 整数类型
4.3.2 浮点类型
4.3.3 理解浮点类型
4.4 字符(char)数据类型
4.5 布尔(boolean)数据类型
4.6 空(null)类型
4.7 Number类
4.8 java.math包
4.8.1 BigInteger类
4.8.2 BigDecimal类
4.9 货币计算
4.9.1 不精确的结果和比较运算符
4.9.2 浮点操作结果凑整
4.9.3 用整数类型存储货币值
4.10 原始数据类型的包装器(Wrapper)类
4.10.1 字符串的基本类型值解析
4.10.2 把原始数值类型转换成字符串
4.10.3 位模式操作
4.10.4 访问原始数据类型的系统属性
4.10.5 Unicode工具方法
4.11 Object类
4.11.1 引用相等vs.等价关系
4.11.2 解散列表(Hash Table)
4.11.3 五个内务(Housekeeping)方法
4.12 比较方法
4.12.1 什么是默认顺序?
4.12.2 什么是自然顺序?
4.12.3 倒序(递减)排序
4.12.4 根据一个以上的成员变量排序
4.12.5 Comparable接口
4.12.6 Comparator接口
第5章 字符串和其他通用数据类型
5.1 简介
5.2 可以进行修改操作的方法
5.3 String或StringBuffer的长度
5.4 StringBuffer的容量
5.4.1 StringBuffer容量的确定
5.5 String索引
5.5.1 String和StringBuffer的右开区间
5.6 String和StringBuffer类中的已检查异常
5.7 String类
5.7.1 大小写映射
5.7.2 字符串比较
5.7.3 访问单个字符或子字符串
5.7.4 char[]和String之间的相互转换
5.7.5 转换本地编码的字符串
5.7.6 String类的杂项方法
5.7.7 String类中的特殊构造方法
5.8 StringBuffer类
5.8.1 重载的方法append和insert
5.8.2 StringBuffer类中的其他方法
5.9 其他和字符串相关的类
5.9.1 StringCharacterIterator类
5.9.2 StringReader和StringWriter类
5.10 词法分析
5.10.1 BreakIterator类
5.10.2 StringTokenizer类
5.10.3 StreamTokenizer类
5.11 字符串连接操作
5.11.1 重载的二元+操作符的一个注意事项
5.11.2 隐含的字符串转换
5.11.3 内置机制
5.11.4 共享字符缓冲区
5.12 在应用平台上显示诊断信息
5.12.1 标准I/O
5.12.2 输出和println方法
5.13 Locale类
5.13.1 默认的区域
5.13.2 能够支持的区域
5.14 Date类
5.14.1 日期比较
5.15 Gregorian Calendar类
5.15.1 实例化GregorianCalendar类
5.15.2 矛盾的成员变量优先规则
5.15.3 最大DAY_OF_MONTH规则
5.16 Calendar类中的日期和时间成员变量
5.16.1 日期和时间成员变量的标准默认值
5.16.2 格式化日期和时间成员变量
5.16.3 日期和时间成员变量的操作方法
5.17 TimeZone类
5.18 理解i 18n和l 10n的不同
5.19 通用数据类型的本地化过程
5.19.1 数字的格式化
5.19.2 格式化日期和时间
第6章 数组和集合框架
6.1 介绍
6.2 数组.组件和元素类型
6.3 数组
6.3.1 for循环的标准格式
6.3.2 数组类是动态创建的
6.3.3 数组类型的成员
6.3.4 数组类型变量声明
6.3.5 初始化数组类型变量
6.3.6 数组访问表达式
6.4 忧愁河上的桥(toArray方法)
6.5 无类型引用和参数化类型
6.5.1 什么是运行时类型?
6.6 时间复杂性(或大-O表示法)
6.6.1 常数时间操作
6.6.2 折合常数时间
6.6.3 对数时间
6.6.4 线性时间
6.6.5 二次方时间
6.7 等价关系和元素
6.8 重复元素
6.8.1 用可变对象作为集的元素或映射的键
6.9 集合框架
6.9.1 批操作
6.9.2 最大普遍性原理
6.9.3 Collection接口
6.9.4 Map接口
6.9.5 容器的内务方法
6.10 通用实现
6.10.1 选择一个通用实现
6.10.2 通用实现的性能优化
6.11 专用实现
6.11.1 WeakHashMap
6.12 视图
6.12.1 同步视图
6.12.2 不可修改的视图
6.12.3 范围视图(子列表, 子集和子映射)
6.12.4 映射的集合视图
6.12.5 数组的列表视图
6.13 迭代器
6.13.1 列表迭代器
6.13.2 用集合视图迭代映射
6.13.3 笨人的集合
6.13.4 同步迭代器
6.13.5 fail-fast迭代器
6.13.6 用TreeSet或TreeMap向后迭代
6.14 Al-Khwarizmi是关于估算的印度艺术
6.15 Arrays和其他Collections的方法
6.15.1 集合排序
6.15.2 查找
6.15.3 克隆和拷贝容器
6.15.4 重组
6.15.5 填充
6.15.6 最小元素和最大元素
6.15.7 便利实现
6.15.8 数组的equals方法
6.16 核心集合接口的定制实现
6.16.1 抽象实现
6.16.2 可选操作
6.16.3 受限容器
6.16.4 标准构造方法
6.17 多映射和多维数组
6.17.1 多映射
6.17.2 多维数组
6.18 传统容器
猜您喜欢