Java高手真经(编程基础卷):Java核心编程技术(Java开发专家)(附赠DVD光盘1张,赠送手册1本)

分類: 图书,计算机与互联网,程序语言与软件开发,语言与开发工具,Java,初级教程,
品牌: 刘中兵Java研究室
基本信息·出版社:电子工业出版社
·页码:901 页
·出版日期:2009年
·ISBN:7121080540/9787121080548
·条形码:9787121080548
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
·丛书名:Java开发专家
·附带品描述:附赠DVD光盘1张,赠送手册1本
产品信息有问题吗?请帮我们更新产品信息。
内容简介《Java高手真经(编程基础卷):Java核心编程技术》详细讲解了Java语言基础开发中的各种技术,主要内容包括如下。Java开发入门:JDK、JVM、Eclipse、Linux。Java语法基础:类、抽象类、接口、内部类、匿名类、异常、编码规范。Java核心编程:流、多线程、实体类、集合类、正则表达式、XML、属性文件。Java图形编程:AWT(Java2D、JavaSound、Media)、Swing、SWT、Jface。Java网络编程:Applet、Socket/TCP/UDP、NIO、RMI、CORBA。Java高级特性:反射、泛型、注释符、自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入。随书附赠光盘内容为《Java高手真经(编程基础卷):Java核心编程技术》各种原型包、系统源程序。《Java高手真经(编程基础卷):Java核心编程技术》内容循序渐进,通俗易懂,覆盖了Java开发的最流行技术。无论对于Java软件设计还是软件开发,《Java高手真经(编程基础卷):Java核心编程技术》都是精通开发Java应用的必备的实用手册。《Java高手真经(编程基础卷):Java核心编程技术》适合作为Java相关培训机构的教材,也可作为Java自学人员的参考手册。
作者简介刘中兵Java研究室是一支专注于Java/JavaEE技术研究与应用创新的专业型团队,由一批来自于Sun.IBM.华为等国内外知名软件企业的技术专家。资深工程师和架构设计师组成。
Java研究室成员擅长于JavaEE系统的架构设计。程序开发。软件测试和集群与分布式部署,在Java/JavaEE企业应用。无线互联网与网络通信等领域拥有丰富的项目实战经验,曾为多家国内外大型企业开发和实施过大型应用系统,拥有最前沿的技术实战经验。
Java研究室致力于Java技术的精炼与传播,旨在将自身实践的第一手经验传递给大家,目前专注于Java.JavaWeb.JavaEE和数据库开发技术,撰写的“开发者突击”。“Web2.0动态网站开发”。“开发巨匠”等多个畅销系列图书深受广大读者欢迎。
Java研究室今隆重向读者介绍最新撰写的“Java高手真经”系列,是国内首次凝练完整科学的Java技术体系,深入剖析了Java技术体系中的各个核心技术,希望可以为您的技术精修之道提供独具价值的学习指南。
编辑推荐《Java高手真经(编程基础卷):Java核心编程技术》详细讲述了:Java语言基础开发中的各种技术,主要内容包括如下。
·Java开发入门:JDK、JVM、Eclipse、Linux。
·Java语法基础:类、抽象类、接口、内部类、匿名类、异常、编码规范。
·Java核心编程:流、多线程、实体类、集合类、正则表达式、XML、属性文件。
·Java图形编程:AWT(Java2D、JavaSound、Media)、Swing、SWT、JFace.
·Java网络编程:Applet、socket/TCP/UDP、NIO、RMI、CORBA。
·Java高级特性:反射、泛型、注释符、自动装箱和拆箱、枚举类、可变参数、可变返回类型、增强循环、静态导入。
目录
第1部分 Java开发入门
第1课 Java快速上手
1.1 开始了解Java
1.1.1 Java语言的11个特性
1.1.2 Java语言的构成-JIT.JVM.JRE.JDK
1.1.3 Java虚拟机JVM
1.2 安装Java开发环境
1.2.1 下载JDK
1.2.2 安装JDK和JRE
1.2.3 设置环境变量
1.2.4 学会查找Java帮助和API文档
1.3 开发第一个Java程序-HelloWorld.java
1.3.1 编写Java入门实例HelloWorld.java
1.3.2 编译类文件-javac命令
1.3.3 运行类文件-java命令
1.3.4 类文件打包-jar命令
1.3.5 生成API文档-javadoc命令
1.4 本课小结
1.4.1 总结本课的知识点
1.4.2 要掌握的关键点
1.4.3 课后上机作业
1.4.4 继续下一课:JVM内存结构及其调优
第2课 JVM内存结构及其调优
2.1 Java虚拟机结构与属性
2.1.1 Java虚拟机内存结构
2.1.2 Java虚拟机配置选项
2.2 Java垃圾回收机制
2.2.1 垃圾回收的2种方法
2.2.2 垃圾收集器的7个类型
2.3 JVM内存区域配置
2.3.1 配置堆区域
2.3.2 配置新域与旧域
2.3.3 配置永久区域
2.3.4 配置新域子空间
2.4 JVM性能调优实战
2.4.1 调优配置参考
2.4.2 JVM调优实战
2.5 本课小结
2.5.1 总结本课的知识点
2.5.2 要掌握的关键点
2.5.3 课后上机作业
2.5.4 继续下一课:在Eclipse下开发Java程序
第3课 在Eclipse下开发Java程序
3.1 集成开发工具的对比
3.1.1 Eclipse-IBM公司
3.1.2 NetBeans-Sun公司
3.1.3 JBuilder-Borland公司
3.1.4 IntelliJ-JetBrains公司
3.1.5 JCreator-Xinox公司
3.1.6 对比总结
3.2 安装和配置Eclipse开发环境
3.2.1 Eclipse版本与代号
3.2.2 Eclipse安装包的下载
3.2.3 Eclipse的安装与启动
3.2.4 集成配置JDK
3.3 Eclipse使用演练
3.3.1 Eclipse工作区使用演练-添加选项卡
3.3.2 Eclipse透视图使用演练-切换到CVS视图
3.3.3 Eclipse插件安装演练-安装反编译工具Jad插件
3.4 使用Eclipse进行Java项目的开发
3.4.1 在Eclipse中新建Java项目
3.4.2 编写HelloWorld.java类
3.4.3 运行Java程序
3.4.4 调试Java程序
3.4.5 导出JAR包
3.4.6 导出可执行的JAR包
3.4.7 生成Javadoc文档
3.5 本课小结
3.5.1 总结本课的知识点
3.5.2 要掌握的关键点
3.5.3 课后上机作业
3.5.4 继续下一课:在Linux下开发Java程序
第4课 在Linux下开发Java程序
4.1 Linux系统概述
4.1.1 Linux系统简介
4.1.2 Linux系统的特点
4.1.3 Linux发行版本
4.2 在虚拟机VMware6.0中安装RedHat9.0
4.2.1 下载VMware6.
4.2.2 安装VMware6.
4.2.3 新建Linux类型的虚拟机
4.2.4 安装RedHat9.0系统
4.3 Linux系统的使用
4.3.1 启动Linux并初始化
4.3.2 Linux终端及常用命令
4.3.3 使用vi编辑器编辑文件
4.3.4 关闭系统
4.4 让Linux与外界建立联系
4.4.1 配置Linux上网
4.4.2 让Linux访问Windows下的文件
4.4.3 使用FTP访问Linux
4.4.4 使用远程终端Putty访问Linux
4.5 安装Java开发环境
4.5.1 下载JDK
4.5.2 安装JDK
4.5.3 设置环境变量
4.5.4 检验JDK是否安装成功
4.6 开发第一个Java程序
4.6.1 编写入门实例类HelloWorld.java
4.6.2 编译类HelloWorld.java
4.6.3 运行类HelloWorld.class
4.7 在Linux下使用Eclipse
4.7.1 下载Eclipse
4.7.2 安装Eclipse
4.7.3 启动Eclipse
4.7.4 使用Eclipse开发入门实例
4.8 本课小结
4.8.1 总结本课的知识点
4.8.2 要掌握的关键点
4.8.3 课后上机作业
4.8.4 继续下一课:Java语法基础
第2部分 Java语法基础
第5课 Java核心语法详解
5.1 Java类的基本构成-包.引入.类.变量.方法.注释
5.1.1 包(package)
5.1.2 引入(import)
5.1.3 类(class)
5.1.4 变量(variable)
5.1.5 方法(method)
5.1.6 注释
5.2 Java修饰符-修饰类.变量与方法
5.2.1 类的修饰符
1.抽象类:abstract2.最终类:final
5.2.2 变量的修饰符
1.静态变量:static2.静态初始化器:static
3.最终变量:final4.易失变量:volatile
5.2.3 方法的修饰符
1.抽象方法:abstract2.静态方法:static
3.最终方法:final4.本地方法:native
5.同步方法:synchronized
5.2.4 访问控制符
1.公有访问控制符(public)
2.私有访问控制符(private)
3.保护访问控制符(protected)
4.默认访问控制符
5.3 Java变量
5.3.1 定义一个变量
5.3.2 变量的命名规则
5.3.3 Java保留关键字
5.3.4 变量赋值的两种方法
5.3.5 变量的作用范围
5.3.6 成员变量与局部变量
5.4 Java数据类型
5.4.1 基本数据类型
1.float类型2.字符类型:char
5.4.2 对象数据类型
5.4.3 引用数据类型
5.4.4 数组数据类型
5.5 Java运算符
5.5.1 算术运算符
5.5.2 赋值运算符
5.5.3 自增/减运算符
5.5.4 关系运算符
5.5.5 逻辑运算符
5.5.6 运算符的优先级
5.6 Java方法
5.6.1 定义方法
1.访问说明符2.修饰符
3.返回值类型4.方法名
5.参数列表
5.6.2 方法的3种类型
5.6.3 方法的参数传递
5.6.4 方法的递归调用
5.6.5 main()方法
5.7 循环与流程控制
5.7.1 if条件语句
5.7.2 switch分支语句
5.7.3 for循环控制语句
5.7.4 while与do…while循环控制语句
5.7.5 break.continue.label和return
控制语句
5.8 本课小结
5.8.1 总结本课的知识点
5.8.2 要掌握的关键点
5.8.3 课后上机作业
5.8.4 上机作业参考样例
5.8.5 继续下一课:Java面向对象编程
第6课 Java面向对象编程
6.1 封装(encapsulation)-类
6.1.1 类的封装
6.1.2 对象的生成
6.1.3 对象的使用
6.2 继承(inheritance)-抽象类
6.2.1 继承的概念-超类和子类
6.2.2 子类不能访问私有成员与方法
6.2.3 父类和子类的相互转换
6.2.4 使用this和super
6.2.5 多态(polymiorphism)-方法的覆盖(override).重载(overload).重写(overwrite)
6.2.6 必须被继承的类-抽象类(abstract)
6.2.7 不能被继承的类-最终类(final)
6.3 多重继承-接口类
6.3.1 接口的含义
6.3.2 接口的创建与实现
6.3.3 接口与抽象类的区别
6.4 本课小结
6.4.1 总结本课的知识点
6.4.2 要掌握的关键点
6.4.3 课后上机作业
6.4.4 上机作业参考样例
6.4.5 继续下一课:Java面向对象编程扩展
第7课 Java面向对象编程扩展
7.1 Java静态类(StaticClass)
7.1.1 静态类与非静态类的区别
7.1.2 静态方法
7.1.3 静态变量
7.1.4 静态代码块
7.1.5 静态内部类
7.2 Java匿名类(AnonymousClass)
7.2.1 匿名类的定义
7.2.2 匿名类的使用实例
7.2.3 使用匿名类处理Swing事件
7.3 Java内部类(InnerClass)
7.3.1 内部类的含义
7.3.2 内部类的使用实例
7.3.3 局部内部类
7.3.4 内部类引用外部类对象
7.4 Java异常类(ExceptionClass)
7.4.1 Java的异常层次结构
7.4.2 异常的捕捉处理机制
7.4.3 使用异常和自定义异常类
7.5 本课小结
7.5.1 总结本课的知识点
7.5.2 要掌握的关键点
7.5.3 课后上机作业
7.5.4 上机作业参考样例
7.5.5 继续下一课:Java编码规范与样式
第8课 Java编码规范与样式
8.1 Java命名规范
8.1.1 文件的命名
8.1.2 包的命名
8.1.3 类的命名
8.1.4 变量的命名
8.1.5 常量的命名
8.1.6 数组的命名
8.1.7 方法的命名
8.2 Java排版规范
8.2.1 空格
8.2.2 空行
8.2.3 缩进
8.2.4 页宽
8.3 Java注释规范
8.3.1 块注释
8.3.2 单行注释
8.3.3 尾端注释
8.3.4 行末注释
8.4 Java文件样式
8.4.1 版权信息
8.4.2 包与引入
8.4.3 类的注释
8.4.4 类的定义
8.4.5 变量及其存取方法
8.4.6 构造函数
8.4.7 类方法
8.4.8 toString()方法
8.4.9 main()方法
8.5 本课小结
8.5.1 总结本课的知识点
8.5.2 要掌握的关键点
8.5.3 课后上机作业
8.5.4 继续下一课:Java核心编程
第3部分 Java核心编程
第9课 Java输入/输出流
9.1 标准设备输入/输出
9.1.1 标准输入/输出类System
9.1.2 控制台读写类Console
9.2 文件基本处理
9.2.1 文件操作类File
9.2.2 文件搜索类FileFilter与FilenameFilter
9.2.3 文件随机读写类RandomAccessFile
9.3 输入/输出流
9.3.1 流的运作原理
9.3.2 输入字节流InputStream
1.字节数组作为输入源-ByteArrayInputStream
2.文件作为输入源-FileInputStream
3.对象作为输入源-ObjectInputStream
4.字符串作为输入源-StringBufferInputStream
5.管道输入流-PipedInputStream
6.串联输入源-SequenceInputStream
7.过滤输入流-FilterInputStream
8.缓存输入流-BufferedInputStream
9.数据输入流-DataInputStream
10.行号输入流-LineNumberInputStream
11.推回输入流-PushbackInputStream
12.总结
9.3.3 输出字节流OutputStream
1.字节数组作为输出源-ByteArrayOutputStream
2.文件作为输出源-FileOutputStream
3.对象作为输出源-ObjectOutputStream
4.管道输出流-PipedOutputStream
5.过滤输出流-FilterOutputStream
6.缓存输出流-BufferedOutputStream
7.数据输出流-DataOutputStream
8.格式化输出流-PrintStream
9.总结
9.3.4 输入字符流Reader
1.字符数组作为输入源-CharArrayReader
2.文件作为输入源-FileReader
3.字符串作为输入源-StringReader
4.管道输入流-PipedReader
5.缓存输入流-BufferedReader
6.行号输入流-LineNumberReader
7.过滤输入流-FilterReader
8.推回输入流-PushbackReader
9.总结
9.3.5 输出字符流Writer
1.字符数组作为输出源-CharArrayWriter
2.文件作为输出源-FileWriter
3.字符串作为输出源-StringWriter
4.管道输出流-PipedWriter
5.过滤输出流-FilterWriter
6.缓存输出流-BufferedWriter
7.格式化输出流-PrintWriter
8.总结
9.3.6 字节流与字符流的转换
1.字节输入流转换为字符输入流
2.字节输出流转换为字符输出流
9.4 本课小结
9.4.1 总结本课的知识点
9.4.2 要掌握的关键点
9.4.3 课后上机作业
9.4.4 上机作业参考样例
9.4.5 继续下一课:Java多线程编程
第10课 Java多线程编程
10.1 线程的概念
10.1.1 进程与线程的区别
10.1.2 线程的概念模型
10.1.3 线程的运行状态
10.1.4 线程的优先级
10.2 线程的开发方法
10.2.1 使用进程调用Java程序
10.2.2 第一种方法-继承Thread
10.2.3 第二种方法-实现Runnable
10.2.4 使用定时器TimerTask
10.2.5 使用线程组ThreadGroup
10.2.6 使用线程池ExecutorService
10.3 线程的运行控制
10.3.1 线程的启动start().join()与停止stop()
10.3.2 线程的休眠sleep()与挂起yield()
10.3.3 线程的同步synchronized
10.3.4 线程的同步锁机制:wait().notify()和notifyAll()
10.4 本课小结
10.4.1 总结本课的知识点
10.4.2 要掌握的关键点
10.4.3 课后上机作业
10.4.4 上机作业参考样例
10.4.5 继续下一课:Java常用实体类
第11课 Java常用实体类
11.1 Java系统级类
11.1.1 系统类System
1.访问系统属性2.访问环境变量
3.加载文件和库4.快速复制数组
5.取得系统时间6.系统退出命令
7.执行垃圾回收
11.1.2 运行时类Runtime
1.查看系统内存2.终止JVM虚拟机
3.运行系统程序4.使用关闭钩子
11.2 Java字符串处理类
11.2.1 字符串类String
1.提取单个字符2.提取子字符串
3.比较字符串4.定位字符串
5.匹配字符串6.拆分字符串
7.替换字符串8.转换大小写
9.格式化输出
11.2.2 字符串分隔类StringTokenizer
11.2.3 线程安全的可变字符串类StringBuffer
11.2.4 可变字符串类StringBuilder
11.2.5 选择String.StringBuffer与StringBuilder
11.3 Java日期处理类
11.3.1 日期类Date
11.3.2 日期格式化类SimpleDateFormat
11.3.3 日历类Calendar
11.4 Java数字处理类
11.4.1 数学函数类Math
11.4.2 随机数类Random
11.4.3 基本数据类型转换
11.5 本课小结
11.5.1 总结本课的知识点
11.5.2 要掌握的关键点
11.5.3 继续下一课:Java常用集合类
第12课 Java常用集合类
12.1 集合类概述
12.1.1 Iterator与Enumeration
12.1.2 Collections与Collection
12.1.3 Arrays与数组
12.1.4 Dictionary字典
12.1.5 Queue队列
12.2 列表类List
12.2.1 抽象类AbstractList与AbstractSequentialList
12.2.2 链表LinkedList
12.2.3 可变数组ArrayList
12.2.4 向量Vector
12.2.5 堆栈Stack
12.3 集合类Set
12.3.1 抽象类AbstractSet与接口SortedSet
12.3.2 哈希集合HashSet
12.3.3 树集合TreeSet
12.4 映射类Map
12.4.1 抽象类AbstractMap与接口SortedMap.NavigableMap
12.4.2 树映射TreeMap
12.4.3 哈希映射HashMap
12.4.4 链表哈希映射LinkedHashMap
12.4.5 弱哈希映射WeakHashMap
12.4.6 哈希表Hashtable
12.4.7 属性Properties
12.5 对比与选择
12.5.1 对比表格
12.5.2 List选择:LinkedList.ArrayList与Vector
12.5.3 Map选择:Hashtable.HashMap.WeakHashMap
12.6 本课小结
12.6.1 总结本课的知识点
12.6.2 要掌握的关键点
12.6.3 继续下一课:Java正则表达式
第13课 Java正则表达式
13.1 正则表达式语法
13.1.1 正则表达式的起源
13.1.2 正则表达式的匹配字符
1.普通字符2.非打印字符
3.特殊字符4.次数限定符
5.定位符6.选择与分组
7.向后引用8.操作符的优先级
13.1.3 正则表达式的匹配规则
1.基本模式匹配规则2.字符簇匹配规则
3.重复出现匹配规则
4.匹配次数中的贪婪与非贪婪规则
5.匹配时反向引用规则
6.预搜索与懒惰搜索规则
13.1.4 全部符号汇总表
13.1.5 常用正则表达式举例
13.2 Java正则表达式详解
13.2.1 使用String类的匹配功能
13.2.2 使用正则表达式库Pattern和Matcher
13.2.3 正则表达式库的4个功能
13.3 本课小结
13.3.1 总结本课的知识点
13.3.2 要掌握的关键点
13.3.3 课后上机作业
13.3.4 继续下一课:XML与属性文件
第14课 XML与属性文件
14.1 名词解释
14.1.1 DOM与SAX模型
14.1.2 DOM和SAX接口的实现-JAXP
14.1.3 DOM的分支发展-JDOM和DOM4J
14.1.4 Xerces和Crimson
14.1.5 流式操作库StAX
14.1.6 总结
14.2 使用XML库
14.2.1 使用DOM读取XML文件
14.2.2 使用SAX读取XML文件
14.2.3 使用JDOM读写XML文件
14.2.4 使用DOM4J读写XML文件
14.2.5 使用StAX读取XML文件
14.3 属性文件读写
14.3.1 读写属性文件的方法
14.3.2 读写文件实例
14.4 本课小结
14.4.1 总结本课的知识点
14.4.2 要掌握的关键点
14.4.3 课后上机作业
14.4.4 继续下一课:Java图形编程
第4部分 Java图形编程
第15课 JavaGUI库对比
15.1 JavaGUI库简介
15.1.1 AWT简介
15.1.2 Swing简介
15.1.3 SWT简介
15.1.4 JFace简介
15.2 HelloWorld对比实例
15.2.1 AWT实例
15.2.2 Swing实例
15.2.3 SWT实例
15.2.4 JFace实例
15.3 本课小结
15.3.1 总结本课的知识点
15.3.2 要掌握的关键点
15.3.3 课后上机作业
15.3.4 继续下一课:AWT图形界面开发
第16课 AWT图形界面开发
16.1 AWT界面组件
16.1.1 基本的组件类树
1.组件(Component)2.容器(Container)
16.1.2 窗口与对话框
1.绘制窗体Frame2.使用面板Panel
3.对话框Dialog4.文件对话框FileDialog
16.1.3 基本组件
1.文本Label2.按钮Button
3.复选框Checkbox
4.复选框组CheckboxGroup
5.下拉列表Choice6.文本框TextField
7.文本区域TextArea8.列表List
9.画布Canvas
16.1.4 菜单组件
1.菜单栏MenuBar2.菜单Menu
3.菜单选项MenuItem
16.2 AWT布局管理器
16.2.1 流式布局FlowLayout
16.2.2 区域布局BorderLayout
16.2.3 网格布局GridLayout
16.2.4 卡片布局CardLayout
16.2.5 容器的嵌套
16.3 AWT事件处理
16.3.1 事件授权模型
16.3.2 授权模型:事件类型
16.3.3 授权模型:事件监听器
16.3.4 使用事件监听器
1.实现监听器接口2.使用内部类
3.使用匿名类
16.3.5 使用事件适配器
16.4 本课小结
16.4.1 总结本课的知识点
16.4.2 要掌握的关键点
1.低级事件2.高级事件
16.4.3 课后上机作业-Java文本编辑器
16.4.4 上机作业参考样例
16.4.5 上机作业参考样例运行结果
16.4.6 打包javaawt.zip
16.4.7 继续下一课:AWT多媒体编程
第17课 AWT多媒体编程
17.1 图像处理-java.awt.image
17.1.1 加载图像
17.1.2 显示图像
17.1.3 实例一:显示图片
17.1.4 实例二:缩放图片
17.2 二维图像绘制-Java2D
17.2.1 Java2D简介
17.2.2 取得Graphics2D对象
17.2.3 设置Graphics2D属性
17.2.4 创建绘制对象
17.2.5 绘制对象
17.2.6 实例一:绘制图形
17.2.7 实例二:显示文字
17.2.8 实例三:显示图像
17.3 音频录制与播放-JavaSound
17.3.1 JavaSound体系结构
17.3.2 音频输入/输出原理
17.3.3 音频的数据格式
17.3.4 音频的录制
17.3.5 音频的播放
17.3.6 音频的保存
17.3.7 实例一:录音机程序
17.3.8 实例二.MP3音乐播放器
17.4 视频拍照与播放-JMF多媒体库
17.4.1 JMF模型
17.4.2 创建Player对象
17.4.3 截取多媒体数据
17.4.4 实例一:视频拍照程序
17.4.5 实例二:视频播放器
17.5 本课小结
17.5.1 总结本课的知识点
17.5.2 要掌握的关键点
17.5.3 课后上机作业
17.5.4 继续下一课:Swing图形界面开发
第18课 Swing图形界面开发
18.1 Swing界面组件
18.1.1 组件类树
18.1.2 窗口与对话框
1.窗体JFrame
2.内部窗体JInternalFrame
3.图层容器JLayeredPane
4.虚拟桌面容器JDesktopPane
5.对话框JDialog
6.文件选择对话框JFileChooser
7.颜色选择对话框JColorChooser
18.1.3 基本组件
1.文本Jlabel2.按钮JButton
3.复选框JcheckBox4.单选框JRadioButton
5.文本框JtextField6.密码框JPasswordField
7.文本域JtextArea8.文本文件域JTextPane
9.HTML编辑域JeditorPane
10.列表Jlist11.滚动条JscrollBar
12.进度条JprogressBar13.滑标组件Jslider
14.表格组件Jtable15树形组件Jtree
18.1.4 菜单栏组件
1.菜单栏JmenuBar2.菜单JMenu
3.菜单选项JmenuItem4.弹出菜单JPopupMenu
18.1.5 工具栏组件JToolBar
18.2 Swing布局管理器
18.3 Swing事件处理
18.4 本课小结
18.4.1 总结本课的知识点
18.4.2 要掌握的关键点
18.4.3 课后上机作业-Java文本编辑器
18.4.4 上机作业参考样例
18.4.5 上机作业参考样例运行结果
18.4.6 打包javaswing.zip
18.4.7 继续下一课:SWT图形界面开发
第19课 SWT图形界面开发
19.1 SWT界面组件
19.1.1 组件类树
19.1.2 容器组件
1.主窗口Shell2.面板Composite
3.分组框Group4.选项卡TabFolder
19.1.3 对话框(Dialog)
1.消息框MessageBox
2.颜色选择对话框ColorDialog
3.字体选择对话框FontDialog
4.打印文件对话框PrintDialog
5.选择文件对话框FileDialog
6.选择目录对话框DirectoryDialog
19.1.4 基本组件(Control)
1.按钮组件Button2.标签组件Label
3.文本框组件Text4.下拉框组件Combo
5.列表框组件List6.进度条ProgressBar
7.滚动组件Slider8.滑标组件Scale
19.1.5 菜单栏组件Menu和MenuItem
19.1.6 工具栏组件ToolBar和ToolItem
19.2 SWT布局管理器
19.2.1 充满式布局FillLayout
19.2.2 表格式布局FormLayout
19.2.3 网格式布局GridLayout
19.2.4 行列式布局RowLayout
19.3 SWT事件处理
19.3.1 常用事件
19.3.2 事件监听器
19.4 本课小结
19.4.1 总结本课的知识点
19.4.2 要掌握的关键点
19.4.3 课后上机作业-Java文本编辑器
19.4.4 上机作业参考样例
19.4.5 上机作业参考样例运行结果
19.4.6 打包javaswt.zip
19.4.7 继续下一课:SWT增强组件库JFace
第20课 SWT增强组件库JFace
20.1 JFace扩展组件
20.1.1 窗体
1.普通窗体Window
2.扩展窗体ApplicationWindow
20.1.2 对话框
1.消息提示框MessageDialog
2.输入对话框InputDialog
3.错误提示框ErrorDialog
4.进程监控对话框ProgressMonitorDialog
5.带有提示信息的对话框TitleAreaDialog
20.1.3 Viewer查看器
20.2 Action事件处理
20.2.1 按钮与Action事件
20.2.2 菜单栏与Action事件
20.2.3 工具栏与Action事件
20.3 本课小结
20.3.1 总结本课的知识点
20.3.2 要掌握的关键点
20.3.3 继续下一课:Java网络编程
第5部分 Java网络编程
第21课 Applet组件编程
21.1 Applet基本原理
21.1.1 Applet在网页中的引用
21.1.2 Applet基类
21.1.3 Applet运行状态
21.1.4 Applet入门实例HelloWorld
21.2 Applet核心编程
21.2.1 事件处理:响应鼠标事件
21.2.2 事件处理:响应键盘事件
21.2.3 多媒体:显示图片
21.2.4 多媒体:播放音乐
21.2.5 网页交互:传递网页参数
21.2.6 网页交互:JavaScript操作Applet
21.3 本课小结
21.3.1 总结本课的知识点
21.3.2 要掌握的关键点
21.3.3 课后上机作业-电子相册
21.3.4 上机作业参考样例
21.3.5 打包javaapplet.zip
21.3.6 继续下一课:Java网络编程
第22课 Java网络编程
22.1 基于HTTP协议的网络编程
22.1.1 网页地址格式URI→URL
22.1.2 URL网页地址类
22.1.3 URLConnection网页连接类
22.1.4 HttpURLConnection和JarURLConnection
22.2 基于TCP/IP的Socket编程
22.2.1 TCP/IP与UDP协议简介
22.2.2 IP地址类InetAddress
22.2.3 客户端套接字Socket
22.2.4 补充:Socket选项
22.2.5 补充:Socket异常
22.2.6 服务端套接字ServerSocket
22.2.7 补充:ServerSocket选项
22.2.8 实例一:简单的Client/Server对话程序
22.2.9 实例二:支持多客户的Client/Server服务响应程序
22.3 基于UDP的Socket编程
22.3.1 数据报包DatagramPacket
22.3.2 数据报套接字DatagramSocket
22.3.3 实例一:利用数据报通信的Client/Server程序
22.3.4 组播套接字MulticastSocket
22.3.5 实例二:组播套接字的Client/Server程序
22.4 本课小结
22.4.1 总结本课的知识点
22.4.2 要掌握的关键点
22.4.3 课后上机作业
22.4.4 上机作业参考样例
22.4.5 继续下一课:NIO非阻塞通信
第23课 NIO非阻塞编程
23.1 NIO引入
23.1.1 基于Socket通信存在的问题-I/O阻塞通信
23.1.2 传统的解决方法-使用线程池
23.1.3 最新的解决方案-NIO非阻塞通信
23.2 NIO核心框架
23.2.1 缓存区Buffer
23.2.2 字符集Charset-编码与解码
23.2.3 通道Channel
23.2.4 选择器Selector
23.3 NIO通道编程详解
23.3.1 文件通道FileChannel
23.3.2 Socket通道SocketChannel
23.3.3 ServerSocket通道
ServerSocketChannel
23.3.4 实例一:支持多客户的
Client/Server任务响应程序
23.3.5 数据报通道DatagramChannel
23.3.6 实例二:利用数据报通信的
Client/Server程序
23.4 本课小结
23.4.1 总结本课的知识点
23.4.2 要掌握的关键点
23.4.3 课后上机作业
23.4.4 上机作业参考样例
23.4.5 继续下一课:RMI分布式网络编程
第24课 RMI分布式网络编程
24.1 RMI引入
24.1.1 远程过程调用协议RPC
24.1.2 客户机/服务器模型Client/Server
24.1.3 分布式对象模型
24.1.4 Java远程方法调用RMI
24.2 RMI系统原理与开发步骤
24.2.1 RMI通信机制
1.Stub(存根)
2.Skeleton(框架)
24.2.2 RMI对象序列化
24.2.3 RMI程序的实现步骤
24.2.4 RMI程序的运行步骤
24.3 RMI程序开发详解-HelloWorld
24.3.1 创建远程接口类IHelloWorld.java
24.3.2 创建接口实现类HelloWorld.java
24.3.3 开发服务器程序RMIServer.java
24.3.4 开发客户端程序RMIClient.java
24.3.5 编译并运行应用程序
24.3.6 补充:Java安全许可文件
24.4 本课小结
24.4.1 总结本课的知识点
24.4.2 要掌握的关键点
1.开发RMI应用程序的步骤
2.编译和运行RMI应用程序的步骤
24.4.3 课后上机作业
24.4.4 上机作业参考样例
24.4.5 继续下一课:CORBA分布式
网络编程
第25课 CORBA分布式网络编程
25.1 CORBA引入
25.1.1 CORBA相关概念
25.1.2 CORBA发展历程
25.1.3 CORBA系统的结构与特点
25.1.4 CORBA中间件ORB
25.1.5 RMI与CORBA的结合
RMI-IIOP
25.2 使用Java编写CORBA
程序-HelloWorld实例
25.2.1 创建IDL接口Hello.idl
25.2.2 编译IDL接口产生6个文件
25.2.3 创建IDL接口实现类
HelloImpl.java
25.2.4 实现服务器HelloServer.java
25.2.5 实现客户端HelloClient.java
25.2.6 运行程序
25.2.7 补充:IDL的语法规则
25.3 本课小结
25.3.1 总结本课的知识点
25.3.2 要掌握的关键点
25.3.3 课后上机作业
25.3.4 上机作业参考样例
25.3.5 继续下一课:Java高级特性
第26课 Java反射编程与动态代理
26.1 Java反射机制
26.1.1 反射的概念
26.1.2 Java中的反射
26.1.3 第一个反射的例子
26.1.4 Java反射API
1.取得构造函数-返回类型Constructor
2.取得变量-返回类型Field
3.取得方法-返回类型Method
4.Array类5.Modifier类
26.2 Java反射应用-检测类
26.2.1 标准会话管理器StandardManager
26.2.2 获取类的方法
26.2.3 获取类的构造器
26.2.4 获取类的变量
26.3 Java反射应用-处理对象
26.3.1 创建类的对象
26.3.2 改变变量的值
26.3.3 执行类的方法
26.3.4 使用数组
26.4 Java动态代理
26.4.1 动态代理机制
26.4.2 动态代理应用
1.定义接口和实现类并直接调用
2.使用包装类进行包装
3.使用动态代理
26.4.3 基于动态代理的AOP实现
26.4.4 基于动态代理的字节码库
26.5 本课小结
26.5.1 总结本课的知识点
26.5.2 要掌握的关键点
26.5.3 课后上机作业
26.5.4 上机作业参考
26.5.5 继续下一课:Java泛型编程
第27课 Java泛型编程
27.1 了解Java泛型
27.1.1 数据类型转换错误
27.1.2 用泛型消除类型转换
27.2 泛型类的开发与使用
27.2.1 定义泛型类
27.2.2 无界通配符“?”
27.2.3 上限通配符extends
27.2.4 下限通配符super
27.2.5 定义多态方法
27.2.6 定义泛型异常
27.3 本课小结
27.3.1 总结本课的知识点
27.3.2 要掌握的关键点
27.3.3 课后上机作业
27.3.4 继续下一课:Java注释符编程
第28课 Java注释符编程
28.1 JDK内置注释
28.1.1 注释的格式与分类
28.1.2 覆盖注释@Override
28.1.3 过时注释@Deprecated
28.1.4 警告注释@SuppressWarnings
28.2 自定义注释
28.2.1 定义注释类型@interface
28.2.2 添加成员变量
28.2.3 设置默认值
28.2.4 设置目标范围@Target
28.2.5 设置保持性@Retention
28.2.6 添加公共文档@Documented
28.2.7 设置继承@Inherited
28.3 本课小结
28.3.1 总结本课的知识点
28.3.2 要掌握的关键点
28.3.3 继续下一课:Java5.0语言新特性
第29课 Java5.0语言新特性
29.1 自动装箱和拆箱(Boxing/Unboxing)
29.2 枚举类(EnumerationClasses)
1.publicstaticfinalint的常量
2.定义枚举类
3.为枚举值添加参数
4.枚举的映射(Map)
29.3 可变参数(VariableArguments)
29.4 可变返回类型(CovariantReturnTypes)
29.5 增强循环EnhancedforLoop
29.6 静态导入StaticImport
29.7 控制台输入(ConsoleInput)
1.读取控制台2.读取文件
3.读取字符串
29.8 StringBuilder类(StringBuilder)
29.9 格式化I/O(FormattedI/O)
29.10本课小结
29.10.1 总结本课的知识点
29.10.2 要掌握的关键点
29.10.3 课后上机作业
29.10.4 继续下一课:JavaWeb核心技术
……[看更多目录]
序言一、本书学习目标
Java本身是一种设计非常简单、非常精巧的语言,要学会Java基础,必须掌握从Java开发环境的搭建到Java基础语法知识,再到Java的核心API。根据由浅入深的顺序,我们的学习目标分为如下4个大的方面,它们的关系如下图所示。
对于以上4个方面的内容,前两部分是基础,第3部分是核心,第4部分是补充和完善。这4个方面的技术内容包括如下。
(1)Java开发入门:必须掌握Java开发环境的安装与使用,包括JDK命令、Eclipse集成开发环境、LinuX下Java程序的开发与部署等。
(2)Java语法基础:在JDK和Eclipse开发环境下,要进行Java核心功能的开发,必须了解Java面向对象的语法构成,包括类、抽象类、接口、最终类、静态类、匿名类、内部类、异常的编写,并注意编写符合Java编码规范和文件样式的代码。
(3)Java核心API:根据JDK提供的类库,需要掌握三大核心功能。
Java核心编程:包括Java编程的两大核心功能——Java输入/输出流和多线程,以及常用的辅助类库——实体类、集合类、正则表达式、XML.和属性文件。
文摘插图:

7.过滤输入流——FliterInputStream
FilterlnputStream包含其他一些输入流,它将这些流用做其基本数据源,它可以直接传输数据或提供一些额外的功能。FilterlnputStream类本身只是简单地重写那些将所有请求传递给所包含输入流的InputStream的所有方法。因此,这个类本身对于数据流并没有什么作用。所以,通常并不单独使用它,而是使用它的子类。
FilterInputStream的子类可进一步重写这些方法中的一些方法,并且还可以提供一些额外的方法和字段。接下来我们将讲解继承自该类的4个过滤类。 8.缓存輸入流——BufferedlnputStream BufferedlnputStream为另一个输入流添加一些功能,即缓存输入的能力。在创建BufferedlnputStream时,会创建一个内部缓存区数组。在读取或跳过流中的字节时,可根据需要从包含的输入流再次填充该内部缓存区,一次填充多个字节。
如果你需要一个具有缓存的文件输入流,则应当组合使用FilelnputStream和BufferedlnputStream,这将会提高读取的效率。程序9-16展示了将文件输入流对象is转换为缓存输入流的过程。