img
网络通信基础第五式——实现自定义字节流协议的KTM

NULL 博文链接:https://javaprince.iteye.com/blog/1000331

img
【Android基础】Android SQLite存储自定义对象实例

这是一个Android系统中SQLite数据库存储自定义对象的实例,具体做法是:将对象序列化为字节流字符串,然后将字节流字符串以TEXT类型存储在数据库中;在取数据时,将字节流反序列化为对象就行了。所以我们的实体类得是实现了Serializable接口的类。

img
socket 前两节长度,然后两个字节标识,然后内容

socket 前两字节长度,然后两个字节标识,然后内容

img
I/O流复制文档或者歌曲等

Java I/O字符流复制文档,字节流复制歌曲等 自己定义

img
Android图片加密、解密、切割(源码)

支持图片加解密,支持文件字节流输入输出,支持按宫格切割图片,支持按像素自定义切割图片等多种方法。

img
Java之IO流学习总结

Java IO流学习总结 Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。 IO流的分类 根据处理数据类型的不同分为:字符流和字节流 根据数据流向不同分为:输入流和输出流 字符流和字节流 字符流的由来: 因为数据编码的不同,而有了对字符进行高效操作的流对象。本质其实就是基于字节流读取时,去查了指定的码表。 字节流和字符流的区别: 读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,根据码表映射字符,一次可能读多个字节。 处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。 结论:只要是处理纯文本数据,就优先考虑使用字符流。 除此之外都使用字节流。 输入流和输出流 对输入流只能进行读操作,对输出流只能进行写操作,程序中需要根据待传输数据的不同特性而使用不同的流。 Java IO流对象 1.输入字节流InputStreamIO 中输入字节流的继承图可见上图,可以看出: InputStream 是所有的输入字节流的父类,它是一个抽象类。 ByteArrayInputStream、StringBufferInputStream、FileInputStream 是三种基本的介质流,它们分别从Byte 数组、StringBuffer、和本地文件中读取数据。PipedInputStream 是从与其它线程共用的管道中读取数据,与Piped 相关的知识后续单独介绍。 ObjectInputStream 和所有FilterInputStream 的子类都是装饰流(装饰器模式的主角)。 2.输出字节流OutputStream IO 中输出字节流的继承图可见上图,可以看出: OutputStream 是所有的输出字节流的父类,它是一个抽象类。 ByteArrayOutputStream、FileOutputStream 是两种基本的介质流,它们分别向Byte 数组、和本地文件中写入数据。PipedOutputStream 是向与其它线程共用的管道中写入数据, ObjectOutputStream 和所有FilterOutputStream 的子类都是装饰流。 3.字节流的输入与输出的对应 图中蓝色的为主要的对应部分,红色的部分就是不对应部分。紫色的虚线部分代表这些流一般要搭配使用。从上面的图中可以看出Java IO 中的字节流是极其对称的。“存在及合理”我们看看这些字节流中不太对称的几个类吧! LineNumberInputStream 主要完成从流中读取数据时,会得到相应的行号,至于什么时候分行、在哪里分行是由改类主动确定的,并不是在原始中有这样一个行号。在输出部分没有对应的部分,我们完全可以自己建立一个LineNumberOutputStream,在最初写入时会有一个基准的行号,以后每次遇到换行时会在下一行添加一个行号,看起来也是可以的。好像更不入流了。 PushbackInputStream 的功能是查看最后一个字节,不满意就放入缓冲区。主要用在编译器的语法、词法分析部分。输出部分的BufferedOutputStream 几乎实现相近的功能。 StringBufferInputStream 已经被Deprecated,本身就不应该出现在InputStream 部分,主要因为String 应该属于字符流的范围。已经被废弃了,当然输出部分也没有必要需要它了!还允许它存在只是为了保持版本的向下兼容而已。 SequenceInputStream 可以认为是一个工具类,将两个或者多个输入流当成一个输入流依次读取。完全可以从IO 包中去除,还完全不影响IO 包的结构,却让其更“纯洁”――纯洁的Decorator 模式。 PrintStream 也可以认为是一个辅助工具。主要可以向其他输出流,或者FileInputStream 写入数据,本身内部实现还是带缓冲的。本质上是对其它流的综合运用的一个工具而已。一样可以踢出IO 包!System.out 和System.out 就是PrintStream 的实例! 4.字符输入流Reader 在上面的继承关系图中可以看出: Reader 是所有的输入字符流的父类,它是一个抽象类。 CharReader、StringReader 是两种基本的介质流,它们分别将Char 数组、String中读取数据。PipedReader 是从与其它线程共用的管道中读取数据。 BufferedReader 很明显就是一个装饰器,它和其子类负责装饰其它Reader 对象。 FilterReader 是所有自定义具体装饰流的父类,其子类PushbackReader 对Reader 对象进行装饰,会增加一个行号。 InputStreamReader 是一个连接字节流和字符流的桥梁,它将字节流转变为字符流。FileReader 可以说是一个达到此功能、常用的工具类,在其源代码中明显使用了将FileInputStream 转变为Reader 的方法。我们可以从这个类中得到一定的技巧。Reader 中各个类的用途和使用方法基本和InputStream 中的类使用一致。后面会有Reader 与InputStream 的对应关系。 5.字符输出流Writer 在上面的关系图中可以看出: Writer 是所有的输出字符流的父类,它是一个抽象类。 CharArrayWriter、StringWriter 是两种基本的介质流,它们分别向Char 数组、String 中写入数据。PipedWriter 是向与其它线程共用的管道中写入数据, BufferedWriter 是一个装饰器为Writer 提供缓冲功能。 PrintWriter 和PrintStream 极其类似,功能和使用也非常相似。 OutputStreamWriter 是OutputStream 到Writer 转换的桥梁,它的子类FileWriter 其实就是一个实现此功能的具体类(具体可以研究一SourceCode)。功能和使用和OutputStream 极其类似,后面会有它们的对应图。 6.字符流的输入与输出的对应 7.字符流与字节流转换 转换流的特点: 其是字符流和字节流之间的桥梁 可对读取到的字节数据经过指定编码转换成字符 可对读取到的字符数据经过指定编码转换成字节 何时使用转换流? 当字节和字符之间有转换动作时; 流操作的数据需要编码或解码时。 具体的对象体现: InputStreamReader:字节到字符的桥梁 OutputStreamWriter:字符到字节的桥梁 这两个流对象是字符体系中的成员,它们有转换作用,本身又是字符流,所以在构造的时候需要传入字节流对象进来。 8.File类 File类是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹。 File类保存文件或目录的各种元数据信息,包括文件名、文件长度、最后修改时间、是否可读、获取当前文件的路径名,判断指定文件是否存在、获得当前目录中的文件列表,创建、删除文件和目录等方法。 9.RandomAccessFile类 该对象并不是流体系中的一员,其封装了字节流,同时还封装了一个缓冲区(字符数组),通过内部的指针来操作字符数组中的数据。 该对象特点: 该对象只能操作文件,所以构造函数接收两种类型的参数:a.字符串文件路径;b.File对象。 该对象既可以对文件进行读操作,也能进行写操作,在进行对象实例化时可指定操作模式(r,rw) 注意:该对象在实例化时,如果要操作的文件不存在,会自动创建;如果文件存在,写数据未指定位置,会从头开始写,即覆盖原有的内容。 可以用于多线程下载或多个线程同时写数据到文件。

img
Go语言程序设计中文版[人民邮电大学出版]

目录: 第1章 5个例子 1 1.1 开始 1 1.2 编辑、编译和运行 3 1.3 Hello Who? 6 1.4 大数字——二维切片 8 1.5 栈——自定义类型及其方法 12 1.6 americanise示例——文件、映射和闭包 18 1.7 从极坐标到笛卡儿坐标 ——并发 28 1.8 练习 33 第2章 布尔与数值类型 35 2.1 基础 35 2.2 布尔值和布尔表达式 39 2.3 数值类型 40 2.3.1 整型 42 2.3.2 浮点类型 46 2.4 例子:statistics 53 2.4.1 实现一个简单的统计函数 54 2.4.2 实现一个基本的HTTP服务器 55 2.5 练习 58 第3章 字符串 60 3.1 字面量、操作符和转义 61 3.2 比较字符串 63 3.3 字符和字符串 65 3.4 字符串索引与切片 67 3.5 使用fmt包来格式化字符串 69 3.5.1 格式化布尔值 73 3.5.2 格式化整数 74 3.5.3 格式化字符 75 3.5.4 格式化浮点数 75 3.5.5 格式化字符串和切片 76 3.5.6 为调试格式化 78 3.6 其他字符处理相关的包 80 3.6.1 strings包 81 3.6.2 strconv包 86 3.6.3 utf8包 90 3.6.4 unicode包 91 3.6.5 regexp包 92 3.7 例子:m3u2pls 101 3.8 练习 106 第4章 集合类型 108 4.1 值、指针和引用类型 108 4.2 数组和切片 115 4.2.1 索引与分割切片 119 4.2.2 遍历切片 119 4.2.3 修改切片 121 4.2.4 排序和搜索切片 125 4.3 映射 128 4.3.1 创建和填充映射 129 4.3.2 映射查询 131 4.3.3 修改映射 132 4.3.4 键序遍历映射 132 4.3.5 映射反转 133 4.4 例子 134 4.4.1 猜测分隔符 134 4.4.2 词频统计 136 4.5 练习 141 第5章 过程式编程 144 5.1 语句基础 144 5.1.1 类型转换 147 5.1.2 类型断言 148 5.2 分支 149 5.2.1 if语句 150 5.2.2 switch语句 151 5.3 for循环语句 158 5.4 通信和并发语句 160 5.5 defer、panic和recover 166 5.6 自定义函数 171 5.6.1 函数参数 172 5.6.2 init()函数和main()函数 175 5.6.3 闭包 176 5.6.4 递归函数 178 5.6.5 运行时选择函数 181 5.6.6 泛型函数 183 5.6.7 高阶函数 187 5.7 例子:缩进排序 192 5.8 练习 197 第6章 面向对象编程 199 6.1 几个关键概念 199 6.2 自定义类型 201 6.2.1 添加方法 203 6.2.2 验证类型 207 6.3 接口 209 6.4 结构体 217 6.5 例子 224 6.5.1 FuzzyBool——一个单值自定义类型 224 6.5.2 Shapes——一系列自定义类型 229 6.5.3 有序映射——一个通用的集合类型 240 6.6 练习 248 第7章 并发编程 251 7.1 关键概念 252 7.2 例子 256 7.2.1 过滤器 256 7.2.2 并发的Grep 260 7.2.3 线程安全的映射 266 7.2.4 Apache报告 271 7.2.5 查找副本 278 7.3 练习 285 第8章 文件处理 287 8.1 自定义数据文件 287 8.1.1 处理JSON文件 290 8.1.2 处理XML文件 295 8.1.3 处理纯文本文件 301 8.1.4 处理Go语言二进制文件 307 8.1.5 处理自定义的二进制文件 309 8.2 归档文件 317 8.2.1 创建zip归档文件 317 8.2.2 创建可压缩的tar包 319 8.2.3 解开zip归档文件 321 8.2.4 解开tar归档文件 322 8.3 练习 324 第9章 包 326 9.1 自定义包 326 9.1.1 创建自定义的包 327 9.1.2 导入包 333 9.2 第三方包 334 9.3 Go命令行工具简介 335 9.4 Go标准库简介 336 9.4.1 归档和压缩包 336 9.4.2 字节流和字符串相关的包 336 9.4.3 容器包 337 9.4.4 文件和操作系统相关的包 339 9.4.5 图像处理相关的包 341 9.4.6 数学处理包 341 9.4.7 其他一些包 341 9.4.8 网络包 342 9.4.9 反射包 343 9.5 练习 346

img
java培训机构内部预习文档

chp1.语言基础 基本语法、标识符、命名规范、八种基本类型、基本操作符、运算符 chp2.选择结构 if 、if else、if else if else、switch case chp3.循环控制 while、do while、for、break、continue chp4.函数 函数的三要素、return的用法 chp5.数组 一维数组、数组参数、数组返回值、数组增删、扩容、排序、二维数组 chp6.面向对象 类和对象、实例变量、构造方法、方法重载、引用的概念、this关键字 chp7.面向对象三大特性 封装、继承、多态、对象创建过程、访问修饰符、super关键字、方法重写、instanceof chp8.三个修饰符 static、final、abstract chp9.接口 基本语法、接口的作用、解耦合 chp10.常用类 内部类、Object、包装类、String chp11.集合框架 Collection、List、Set、Map的接口及其实现类、迭代、Hash 算法与 hashCode 方法、comparable、泛型 chp12.异常 概念、分类、产生、传递、处理、自定义异常 chp13.线程 概念、创建、状态转换、数据共享、同步 chp14.I/O框架 File类、流的分类、基本字节流、基本字符流、字节过滤流、字符过滤流、桥转换、对象序列化 chp15.反射 类对象及其获取方式,反射常用方法

img
Java重点知识总结

第1章 1、Java三大平台: Java ME 、Java SE (JDK)、Java EE 2、平台无关性 Application、Applet程序结构 ,Java程序编译、运行过程 ,Application命令行参数 包的概念 ,常用包(结合后面的内容,了解一些类所在的包) 包的导入 , 声明类所在的包 第2章 标识符与关键字 ,注释形式 ,8种基本类型的变量定义、常量写法 ,变量与常量 运算符与表达式 ,流程控制语句(基本语法、例题) ,补充:带标号的break与continue 数组:一维数组 ,静态方法(结合第3章静态变量)特点 方法参数传递(传值、传递引用的区别) , 方法重载(同名、参数形式不同) 字符串(常量、与字符常量的区别、连接运算、例2.18) 。。。。。。。 。。。。 第9章 流的概念 字节流的类的作用、类层次 字符流的类的作用、类层次 随机文件存取类作用 第10章 URL、URLConnection类支持的协议 TCP Socket: 服务器端ServerSocket、客户端Socket (了解) 第11章 JDBC连接步骤用到的类: 装载驱动程序 建立连接 执行SQL语句 结果集 。。。。。。 。。。。。。 五、 编程 30分 1. 结构化程序设计(第二章例题+习题) 2. 类定义的基本语法:定义一个类实现指定的功能,写一个主方法测试该类的功能 (设计自定义异常类,throw、catch异常)

img
李兴华学习笔记之Java高级开发

该文档主要是李兴华老师的视频学习笔记,Java高级开发,具体的目录如下: 课时1 Eclipse开发工具(Eclipse简介) 10 课时2 Eclipse开发工具(使用JDT开发程序) 10 课时3 Eclipse开发工具(debug调试) 14 课时4 Eclipse开发工具(junit测试工具) 15 课时5 Java基础新特性(可变参数) 18 课时6 Java基础新特性(foreach输出) 20 课时7 Java基础新特性(静态导入) 21 课时8 泛型(泛型问题引出) 22 课时9 泛型(实现实现) 24 课时10 泛型(通配符)重点 25 课时11 泛型(泛型接口) 30 课时12 泛型(泛型方法) 31 课时13 枚举(多例与枚举) 31 课时14 枚举(Enum类) 33 课时15 枚举(枚举中定义其他结构) 34 课时16 枚举(枚举应用) 35 课时17 Annotation(代码开发逻辑) 37 课时18 Annotation(准确覆写@Override) 38 课时19 Annotation(过期声明@Deprecated) 40 课时20 Annotation(压制警告@SuppressWarnnings) 41 课时21 接口定义加强 41 课时22 Lamdba表达式 44 课时23 方法引用 47 课时24 内建函数式接口 49 课时25 进程与线程 51 课时26 Java多线程实现(Thread类实现多线程) 52 课时27 Java多线程实现(Runnable接口实现多线程) 57 课时28 Java多线程实现(Thread与Runnable区别) 60 课时29 Java多线程实现(线程状态) 63 课时30 Java多线程实现(Callable实现多线程) 64 课时31 多线程常用操作方法(线程命名和取得) 66 课时32 多线程常用操作方法(线程休眠) 68 课时33 多线程常用操作方法(线程优先级) 70 课时34 线程的同步与死锁(同步问题引出) 71 课时35 线程的同步与死锁(同步处理) 73 课时36 线程的同步与死锁(死锁) 76 课时37 【第06个代码模型】综合案例:生产者与消费者(基础模型) 77 课时38 【第06个代码模型】综合案例:生产者与消费者(解决同步问题) 79 课时39 【第06个代码模型】综合案例:生产者与消费者(解决重复操作问题) 81 课时40 线程池(线程池概念) 84 课时41 线程池(线程池实现) 85 课时42 StringBuffer类 89 课时43 Runtime类 92 课时44 System类 94 课时45 对象克隆 96 课时46 【第07个代码模型】日期处理类(date类) 97 课时47 【第07个代码模型】日期处理类(SimpleDateFormat类)核心 98 课时48 数字操作类(Math类) 100 课时49 数字操作类(随机数) 101 课时50 数字操作 102 课时51 Arrays类 104 课时52 比较器(Comparable) 105 课时53 比较器(二叉树) 107 课时54 比较器(Comparator)理解 109 课时55 国际化程序(国际化实现原理) 112 课时56 国际化程序(Locale类) 113 课时57 国际化程序(ResourseBundle) 114 课时58 国际化程序(国际化程序实现) 115 课时59 观察者设计模式 116 课时60 定时器 118 课时61 UUID类 119 课时62 Base64加密处理 119 课时63 【第08个代码模型】ThreadLocal类 121 课时64 【第08个代码模型】正则表达式(正则问题引出) 125 课时65 【第08个代码模型】正则表达式(正则符号) 126 课时66 【第08个代码模型】正则表达式(String类对正则支持) 128 课时67 【第08个代码模型】正则表达式(java.util.regex开发包) 132 课时68 File文件操作类(File类基本操作) 134 课时69 File文件操作类(创建目录) 136 课时70 File文件操作类(取得文件信息) 137 课时71 File操作文件类(综合案例:目录列表) 139 课时72 字节流与字符流(流操作简介) 141 课时73 字节流与字符流(字节输出流:OutputStream) 142 课时74 字节流与字符流(AutoCloseable自动关闭支持) 145 课时75 字节流与字符流(字节输入流:InputStream) 147 课时76 字节流与字符流(字符输出流:Writer) 149 课时77 字节流与字符流(字符输入流:Reader) 150 课时78 字节流与字符流(字节流与字符流区别) 151 课时79 转换流 153 课时80 【第10个代码模型】综合案例:文件拷贝 155 课时81 字符编码(常用字符编码) 160 课时82 字符编码(乱码产生分析) 160 课时83 内存操作流(内存流操作编码) 161 课时84 内存操作流(内存流操作) 164 课时85 【第11个代码模型】打印流(打印流模型) 166 课时86 【第11个代码模型】打印流(使用系统打印) 168 课时87 【第11个代码模型】打印流(格式化文本信息) 170 课时88 System类对IO的支持(系统输出) 171 课时89 System类对IO的支持(系统输入) 172 课时90 BufferedReader类 174 课时91 【第12个代码模型】Scanner类 176 课时92 【第13个代码模型】对象系列化(序列化基本概念) 179 课时93 【第13个代码模型】对象系列化(序列化实现:序列化与反序列化操作) 180 课时94 【第13个代码模型】对象序列化(transient关键字) 182 课时95 认识反射机制 183 课时96 Class类对象的三种实例化模式 184 课时97 【第14个代码模型】反射与工厂设计模型 185 课时98 反射与类操作(取得父类信息) 190 课时99 反射与类操作(反射调用构造) 191 课时100 反射与类操作(反射调用方法)核心 194 课时101 反射与类操作(反射调用成员) 196 课时102 【代码模型15】综合案例:反射与简单Java类(单级VO操作原理) 200 课时103 【代码模型15】综合案例:反射与简单Java类(单级VO设置实现) 203 课时104 【代码模型15】综合案例:反射与简单Java类(多级VO设置实现) 206 课时105 【代码模型15】综合案例:反射与简单Java类(设置各种数据类型) 208 课时106 【代码模型15】综合案例:反射与简单Java类(自动实例化关联对象) 216 课时107 ClassLoader类加载器(认识类加载器) 218 课时108 ClassLoader类加载器(自定义ClassLoader) 220 课时109 【代码模型16】反射与代理设计模式(基础代理设计模式) 222 课时110 【代码模型16】反射与代理设计模式(动态代理设计模式) 226 课时111 【代码模型16】反射与代理设计模式(cglib实现动态代理) 229 课时112 反射与Annotation(反射取得Annotation) 231 课时113 反射与Annotation(自定义Annotation) 233 课时114 反射与Annotation(Annotation与工厂设计模式) 235 课时115 volatile关键字 236 课时116 网络编程(网络编程简介) 239 课时117 网络编程(基本网络程序模型C/S结构) 240 课时118 网络编程(Echo程序) 242 课时119 JDBC简介 245 课时120 连接Oracle数据库 247 课时121 使用Statement操作数据库(Statement接口介绍) 250 课时122 使用Statement操作数据库(Statement执行更新操作) 251 课时123 使用Statement操作数据库(Statement执行查询操作) 254 课时124 【代码模型17】使用PreparedStatement操作数据库(Statement执行分析) 257 课时125 【代码模型17】使用PreparedStatement操作数据库(PreparedStatement查询案例) 259 课时126 批处理与事务处理(批处理) 263 课时127 批处理与事务处理(事务处理) 265 课时128 Java类集简介 268 课时129 Collection集合接口 269 课时130 【第18代码模型】List集合接口(List接口简介) 271 课时131 【第18代码模型】List集合接口(ArrayList子类 90%) 272 课时132 【第18代码模型】List集合接口(List与简单java类) 274 课时133 【第18代码模型】List集合接口(Vector子类 1%) 276 课时134 【第18代码模型】List集合接口(LinkedList) 278 课时135 【第19个代码模型】Set集合接口(Set接口常用子类) 279 课时136 【第19个代码模型】Set集合接口(集合排序说明) 280 课时137 【第19个代码模型】Set集合接口(重复元素判断) 282 课时138 【第20个代码模型】集合输出(Iterator迭代输出 95%) 285 课时139 【第20个代码模型】集合输出(ListIterator双向迭代 0.01%) 288 课时140 【第20个代码模型】集合输出(Enumeration枚举输出 4.8%) 289 课时141 【第20个代码模型】集合输出(foreach输出 0.1%) 290 课时142 【第21个代码模型】Map集合(Map接口概述) 291 课时143 【第21个代码模型】Map集合(HashMap子类 90%) 292 课时144 【第21个代码模型】Map集合(Hashtable子类 1%) 293 课时145 【第21个代码模型】Map集合(ConcurrentHashMap子类) 295 课时146 【第21个代码模型】Map集合(Map使用Iterator输出)核心 299 课时147 【第21个代码模型】Map集合(Map中key实现说明) 301 课时148 【第21个代码模型】Map集合(TreeMap子类) 302 课时149 Stack栈 305 课时150 Queue队列 306 课时151 Properties属性操作 310 课时152 Collections工具类 312 课时153 Stream数据流(Collection接口扩充) 313 课时154 Stream数据流(Stream基本操作) 315 课时155 Stream数据流(MapReduce模型) 317

img
Go语言程序设计+高清扫描版带书签

内容简介 · · · · · · 国外最经典的Go语言著作,Go语言编程的先驱者Mark Summerfield的实践经验总结。 这是一本Go语言实战指南,帮你了解Go语言,按Go语言的方式思考,以及使用Go语言来编写高性能软件。 作者展示了如何编写充分利用Go语言突破性的特性和惯用法的代码,以及Go语言在其他语言之上所做的改进,并着重强调了Go语言的关键创新。 注重实践教学,每章都提供了多个经过精心设计的代码示例。 由国内第一个核心服务完全采用Go语言实现的团队——七牛团队核心成员翻译。 作者简介 · · · · · · Mark Summerfield Qtrac公司创始人,独立的培训讲师、顾问、技术编辑,Go、Python、C++、Qt和PyQt方面的技术作家。他的著作包括Rapid GUI Programming with Python and Qt、C++ GUI Programming with Qt 4(与Jasmin Blanchette合著)、Programming in Python 3和Advanced Qt Programming等。 许式伟——七牛云存储CEO,开源爱好者,发布过十余个C++开源项目,拥有超过15年的C/C++开发经验。 吕桂华——七牛云存储联合创始人,拥有十余年的C/C++大型项目开发经验,也曾在Java和.NET平台上探索多年。 徐 立——七牛云存储首席布道师,前盛大创新院高级研究员。 何李石——七牛云存储布道师。 七牛云存储技术团队是国内第一个核心服务完全采用Go语言实现的团队。 目录 · · · · · · Go语言程序设计》 第1章 5个例子 1 1.1 开始 1 1.2 编辑、编译和运行 3 1.3 Hello Who? 6 1.4 大数字——二维切片 8 1.5 栈——自定义类型及其方法 12 1.6 americanise示例——文件、映射和闭包 18 1.7 从极坐标到笛卡儿坐标——并发 28 1.8 练习 33 第2章 布尔与数值类型 35 2.1 基础 35 2.2 布尔值和布尔表达式 39 2.3 数值类型 40 2.3.1 整型 42 2.3.2 浮点类型 46 2.4 例子:statistics 53 2.4.1 实现一个简单的统计函数 54 2.4.2 实现一个基本的HTTP服务器 55 2.5 练习 58 第3章 字符串 60 3.1 字面量、操作符和转义 61 3.2 比较字符串 63 3.3 字符和字符串 65 3.4 字符串索引与切片 67 3.5 使用fmt包来格式化字符串 69 3.5.1 格式化布尔值 73 3.5.2 格式化整数 74 3.5.3 格式化字符 75 3.5.4 格式化浮点数 75 3.5.5 格式化字符串和切片 76 3.5.6 为调试格式化 78 3.6 其他字符处理相关的包 80 3.6.1 strings包 81 3.6.2 strconv包 86 3.6.3 utf8包 90 3.6.4 unicode包 91 3.6.5 regexp包 92 3.7 例子:m3u2pls 101 3.8 练习 106 第4章 集合类型 108 4.1 值、指针和引用类型 108 4.2 数组和切片 115 4.2.1 索引与分割切片 119 4.2.2 遍历切片 119 4.2.3 修改切片 121 4.2.4 排序和搜索切片 125 4.3 映射 128 4.3.1 创建和填充映射 129 4.3.2 映射查询 131 4.3.3 修改映射 132 4.3.4 键序遍历映射 132 4.3.5 映射反转 133 4.4 例子 134 4.4.1 猜测分隔符 134 4.4.2 词频统计 136 4.5 练习 141 第5章 过程式编程 144 5.1 语句基础 144 5.1.1 类型转换 147 5.1.2 类型断言 148 5.2 分支 149 5.2.1 if语句 150 5.2.2 switch语句 151 5.3 for循环语句 158 5.4 通信和并发语句 160 5.5 defer、panic和recover 166 5.6 自定义函数 171 5.6.1 函数参数 172 5.6.2 init()函数和main()函数 175 5.6.3 闭包 176 5.6.4 递归函数 178 5.6.5 运行时选择函数 181 5.6.6 泛型函数 183 5.6.7 高阶函数 187 5.7 例子:缩进排序 192 5.8 练习 197 第6章 面向对象编程 199 6.1 几个关键概念 199 6.2 自定义类型 201 6.2.1 添加方法 203 6.2.2 验证类型 207 6.3 接口 209 6.4 结构体 217 6.5 例子 224 6.5.1 FuzzyBool——一个单值自定义类型 224 6.5.2 Shapes——一系列自定义类型 229 6.5.3 有序映射——一个通用的集合类型 240 6.6 练习 248 第7章 并发编程 251 7.1 关键概念 252 7.2 例子 256 7.2.1 过滤器 256 7.2.2 并发的Grep 260 7.2.3 线程安全的映射 266 7.2.4 Apache报告 271 7.2.5 查找副本 278 7.3 练习 285 第8章 文件处理 287 8.1 自定义数据文件 287 8.1.1 处理JSON文件 290 8.1.2 处理XML文件 295 8.1.3 处理纯文本文件 301 8.1.4 处理Go语言二进制文件 307 8.1.5 处理自定义的二进制文件 309 8.2 归档文件 317 8.2.1 创建zip归档文件 317 8.2.2 创建可压缩的tar包 319 8.2.3 解开zip归档文件 321 8.2.4 解开tar归档文件 322 8.3 练习 324 第9章 包 326 9.1 自定义包 326 9.1.1 创建自定义的包 327 9.1.2 导入包 333 9.2 第三方包 334 9.3 Go命令行工具简介 335 9.4 Go标准库简介 336 9.4.1 归档和压缩包 336 9.4.2 字节流和字符串相关的包 336 9.4.3 容器包 337 9.4.4 文件和操作系统相关的包 339 9.4.5 图像处理相关的包 341 9.4.6 数学处理包 341 9.4.7 其他一些包 341 9.4.8 网络包 342 9.4.9 反射包 343 9.5 练习 346 附录A 后记 348 附录B 软件专利的危害 350 附录C 精选书目 353

img
asp.net本质论(带目录)

前言 第1章 网站应用程序 /1 1.1 Web应用程序的简单回顾 /2 1.1.1 资源的地址—通用资源标识符 /2 1.1.2 找到主机 /3 1.1.3 HTTP协议 /4 1.2 最简单的 Web 服务器 /6 1.2.1 网络插座Socket /6 1.2.2 基于 TcpListener 的 Web 服务器 /10 1.2.3 基于 HttpListener 的 Web 服务器 /11 1.3 进入 ASP.NET /13 1.3.1 Web 应用程序域 /13 1.3.2 不使用GAC 和bin 加载Web 应用程序域 /14 1.3.3 默默无闻的工作者对象 /16 1.3.4 Web 应用程序的运行时 /18 1.4 对象化的HTTP /19 1.4.1 请求参数的对象类型 HttpRequest /19 1.4.2 处理回应的对象类型 HttpResponse /21 1.4.3 辅助的常用工具类 HttpServerUtility /23 1.4.4 编码与解码 /24 1.4.5 浏览器类型 /26 1.5 创建自定义的 ASP.NET 服务器 /28 1.5.1 ASP.NET Web 服务器 /28 1.5.2 监听程序 /28 1.5.3 部署程序集 /29 1.5.4 各种各样的Cassini /30 1.6 本章小结 /30 第2章 应用程序对象 /31 2.1 请求的处理参数—上下文对象HttpContext /32 2.1.1 常用成员 /32 2.1.2 底层方法 /33 2.2 应用程序对象 HttpApplication /33 2.2.1 处理管道 /34 2.2.2 HttpApplication 的处理管道 /38 2.2.3 处理过程的简单介绍 /38 2.2.4 HttpContext状态管理 /40 2.3 处理 HttpApplication 的事件 /40 2.3.1 通过 IHttpModule 创建 HttpApplication 的事件处理程序 /40 2.3.2 注册 HttpModule /41 2.3.3 不使用配置文件注册 HttpModule /42 2.3.4 常见的 HttpModule /44 2.3.5 HttpModule的事件 /46 2.3.6 通过 global.asax 创建 HttpApplication 的事件处理程序 /46 2.3.7 global.asax 中 HttpApplication 事件的自动注册 /48 2.3.8 特殊的HttpApplication 事件处理 /48 2.4 两个特殊的事件 /51 2.5 大文件上传问题 /51 2.5.1 文件上传的规范 /51 2.5.2 ASP.NET 中的文件上传 /53 2.5.3 文件上传的解决方案 /54 2.5.4 通过HttpModule 接管请求参数 /54 2.5.5 自定义的请求参数对象 /58 2.5.6 读取上传数据的接口和实现 /62 2.5.7 读取上传数据流 /65 2.5.8 注册自定义的上传管理 /76 2.5.9 使用自定义的上传管理 /77 2.6 各种各样的文件上传 /78 2.6.1 无刷新的上传: jQuery form /78 2.6.2 基于客户端技术的上传进度:SWFUpload /79 2.7 本章小结 /79 第3章 HTTP请求处理程序/80 3.1 处理程序 /81 3.1.1 处理程序与 HttpApplication 的关系 /81 3.1.2 处理程序接口 IHttpHandler 和 IHttpAsyncHandler /81 3.1.3 在处理程序中使用会话 /82 3.1.4 处理程序工厂 /83 3.1.5 注册处理程序 /83 3.1.6 使用处理程序生成验证码 /84 3.2 一般处理程序 /86 3.2.1 一般处理程序工厂 /87 3.2.2 使用一般处理程序的场合 /87 3.2.3 使用一般处理程序生成验证码图片 /87 3.2.4 使用一般处理程序生成 JSON /87 3.3 页面处理程序 /91 3.3.1 页面处理程序工厂 /91 3.3.2 创建页面处理程序 /92 3.3.3 生成的代码 /93 3.3.4 使用页面处理程序 /93 3.4 Web 服务处理程序 /94 3.4.1 Web 服务处理程序工厂 /94 3.4.2 使用 Web 服务处理程序 /95 3.4.3 Web 服务的常用标签 /96 3.4.4 派生自 System.Web.Services.WebService 类的意义 /98 3.5 MVC 处理程序 /98 3.5.1 MVC 的路由接口 IRouteHandler /99 3.5.2 自定义的 IRouteHandler /100 3.5.3 注册路由处理程序 /101 3.5.4 获取控制器的工厂接口 IControllerFactory /102 3.5.5 MVC 请求的处理过程 /102 3.6 资源处理程序 /103 3.6.1 资源的处理程序配置 /103 3.6.2 定义嵌入的资源 /103 3.6.3 获取资源的地址 /104 3.6.4 使用嵌入的资源 /104 3.7 禁止的处理程序 /105 3.7.1 配置禁止访问的资源 /105 3.7.2 禁止访问 Excel /106 3.8 虚拟路径提供器 /106 3.8.1 定义虚拟路径提供器 /106 3.8.2 注册虚拟路径提供器 /107 3.8.3 压缩文件中的网站 /109 3.8.4 SharpZipLib /114 3.9 本章小结 /115 第4章 ASP.NET中的线程与异步 /116 4.1 线程基础 /117 4.1.1 线程 /117 4.1.2 自定义线程 /118 4.1.3 前台线程和后台线程 /119 4.1.4 工作者线程和 I /O 线程 /119 4.1.5 线程池 /120 4.2 .NET 中线程处理 /121 4.2.1 线程的创建与启动 /121 4.2.2 线程的状态 /123 4.2.3 线程的执行上下文 /124 4.2.4 异步编程模式APM /125 4.2.5 基于事件的异步编程模式 EPM /128 4.2.6 异步线程的状态与同步问题 /129 4.2.7 处理管道中的异步问题 /133 4.3 线程池 /137 4.3.1 线程池的工作原理 /137 4.3.2 将工作者线程加入线程池 /138 4.3.3 将I /O 线程加入线程池 /138 4.4 HttpApplication 中的异步线程 /139 4.4.1 ASP.NET 中的线程池设置 /139 4.4.2 异步步骤中的异步点 /141 4.4.3 启动和完成异步步骤 /142 4.5 异步处理程序 /142 4.5.1 异步处理程序接口 /143 4.5.2 在处理程序中异步调用 Web 服务 /143 4.6 异步页面 /144 4.6.1 页面异步任务的启动和完成 /144 4.6.2 异步页面任务 /145 4.6.3 异步页面中访问 Web 服务三种方式 /146 4.6.4 实例—查询 QQ 在线状态 /148 4.7 本章小结 /151 第5章 页面即对象 /152 5.1 流动的网页 /153 5.1.1 字节流 /154 5.1.2 字符编码 /155 5.1.3 字符流 /156 5.1.4 回应对象中的流 /158 5.1.5 专门输出 HTML 的字符流 /158 5.2 控件—页面对象的基石 /160 5.2.1 控件类 /160 5.2.2 Render和RenderControl /161 5.2.3 控件基类 /161 5.2.4 组合模式 Composite /163 5.2.5 ID 是一个问题 /165 5.3 形形色色的控件 /171 5.3.1 HTML 控件 /172 5.3.2 Web 控件 /172 5.3.3 WebPart 控件 /174 5.4 控件实现的常用接口 /175 5.4.1 生成和回发 /175 5.4.2 控件的任意属性IAttributeAccessor /177 5.4.3 数据的回发IPostBackDataHandler /177 5.4.4 回发服务器端事件IPostBackEventHandler /178 5.5 页面 /178 5.5.1 页面与模板 /179 5.5.2 母版页 /184 5.5.3 页面就是一个处理程序 /185 5.5.4 页面的事件处理管道 /185 5.5.5 处理页面的事件 /187 5.6 生成的过程 /188 5.6.1 从模板到对象模型—BuildProvider /189 5.6.2 从标记到控件—ControlBuilder /191 5.6.3 进入生成阶段—ControlAdapter /191 5.6.4 控件适配器—ControlAdapter /192 5.6.5 Web控件适配器—WebControlAdapter /193 5.6.6 页面适配器—PageAdapter /193 5.6.7 使用 Adapter 定制表单的action /194 5.7 自定义的 URL 重写 /195 5.7.1 URL 重写的原理 /196 5.7.2 使用 HttpModule 实现URL 重写 /196 5.7.3 在配置文件中处理重写映射 /199 5.7.4 无扩展名请求的处理问题 /204 5.8 本章小结 /205 第6章 状态 /206 6.1 基本状态管理 /207 6.1.1 隐藏域 /207 6.1.2 Cookie /209 6.1.3 URL /213 6.2 视图状态ViewState /215 6.2.1 序列化和反序列化 /215 6.2.2 控制序列化 /217 6.2.3 Base64 /218 6.2.4 视图状态属性与 IStateManager 接口 /219 6.2.5 保存和恢复的时间点 /221 6.2.6 视图状态的序列化器 /223 6.2.7 使用视图状态实现路径导航 /224 6.3 控件状态 ControlState /228 6.4 应用程序状态 Application /229 6.5 会话状态 Session /229 6.5.1 服务器端的 Session /230 6.5.2 客户端的 SessionID /231 6.5.3 Session 保存的位置 /233 6.5.4 Session 的过期问题 /237 6.5.5 压缩 Session 数据 /238 6.6 HttpContext 状态 /238 6.7 Cache /238 6.7.1 缓存的原理 /238 6.7.2 .NET 中的缓存管理实现 /239 6.7.3 基于文件的缓存依赖 /241 6.7.4 基于SQL的缓存依赖 /242 6.7.5 组合的缓存依赖 /244 6.7.6 删除所有的缓存项目 /246 6.7.7 Web 服务器端的页面缓存 /247 6.7.8 页面局部缓存 /249 6.7.9 自定义的输出缓存提供器 /253 6.8 Memcached /254 6.8.1 下载和安装 Memcached /255 6.8.2 在 ASP.NET 中访问 Memcached /256 6.9 统计当前在线用户 /258 6.9.1 Module 的处理 /258 6.9.2 注册 Module /261 6.9.3 Module 的配置参数 /262 6.9.4 Module 的事件处理 /263 6.10 本章小结 /263 第7章 模板和数据绑定 /264 7.1 页面与绑定 /265 7.1.1 嵌入式代码块和表达式 /265 7.1.2 绑定表达式 /267 7.1.3 目标Target /269 7.1.4 容器Container /269 7.1.5 触发绑定事件的方法 DataBind /270 7.2 控件内的模板 /271 7.2.1 基于模板的控件 /271 7.2.2 控件模板中的 Container /272 7.2.3 DataBinder /272 7.2.4 Page 中的 Eval /273 7.2.5 在属性中使用绑定表达式 /273 7.3 Repeater控件 /273 7.3.1 数据的来源 DataSource /273 7.3.2 Repeater 的基石—RepeaterItem /274 7.3.3 绑定的过程 /275 7.3.4 绑定中的事件 /276 7.3.5 绑定的结果:Controls 集合和 Items 集合 /276 7.3.6 回发中的 ItemCommand 事件 /277 7.4 高级数据控件 /279 7.4.1 唯一支持分栏的控件-DataList /279 7.4.2 GridView /283 7.4.3 ListView 和 DataPager /289 7.5 数据源控件 /291 7.5.1 反射 /292 7.5.2 两种数据源 /293 7.5.3 对象数据源 /297 7.5.4 业务对象的标签 /298 7.5.5 页面控件与数据源控件之间的关系 /300 7.5.6 数据源控件相关的事件点 /303 7.5.7 基于数据源控件的分页 /304 7.6 本章小结 /305 第 8 章 自定义控件 /306 8.1 自定义控件的继承体系 /307 8.2 自定义控件涉及的相关类型 /307 8.3 自定义的带有上传进度的按钮 /308 8.3.1 控件的工作原理 /308 8.3.2 选择控件的基类 /309 8.3.3 自定义的数据类型 /309 8.3.4 状态的持久化 /310 8.3.5 控件的属性 /312 8.3.6 属性转换问题—TypeConverter /313 8.3.7 编辑属性数据 UITypeEditor /320 8.3.8 保存在 ASPX 中 /326 8.3.9 设计器中的显示效果 /329 8.3.10 工具栏中控件的图标 /330 8.3.11 脚本嵌入和使用 /330 8.3.12 控件的呈现 /332 8.3.13 使用自定义控件 /334 8.4 PetShop 中的自定义控件 /335 8.4.1 基类 /335 8.4.2 表格 /335 8.4.3 处理当前页码参数 /336 8.4.4 DataSource 属性 /336 8.4.5 事件 /337 8.4.6 生成 /338 8.5 本章小结 /342 第 9 章 MVC /343 9.1 ASP.NET MVC 是表现层的MVC /344 9.2 在 HttpApplication 中的ASP.NET MVC /344 9.2.1 创建 RouteTable /345 9.2.2 UrlRoutingModule事件处理 /347 9.3 从URL进入MVC之门 /348 9.3.1 有意义的 URL /349 9.3.2 在 IIS 6.0 和 IIS 7 中的配置 /349 9.3.3 从URL到Route /350 9.3.4 约束 /354 9.3.5 Routing /356 9.3.6 RequestContext 的前世今生 /357 9.3.7 在 ASP.NET MVC 中防盗链 /358 9.4 控制器 /361 9.4.1 控制器工厂 /361 9.4.2 使用自定义的控制器工厂 /362 9.4.3 为 Controller 类传递构造函数的参数 /362 9.4.4 Controller 的继承关系 /364 9.4.5 Controller 中的状态管理 /365 9.4.6 基于过滤器的扩展 /368 9.4.7 选择 Action /372 9.5 模型 /373 9.5.1 绑定 Model /374 9.5.2 简单参数和复杂参数 /374 9.5.3 模型对象的元数据 /375 9.5.4 Model 的验证 /377 9.5.5 自定义Model 的验证 /379 9.6 执行 Action /380 9.6.1 各种ActionResult /380 9.6.2 向视图传递数据 /381 9.7 视图 /382 9.7.1 视图引擎 /382 9.7.2 经典视图—ViewPage /383 9.7.3 视图引擎—Razor /384 9.8 本章小结 /384 第10 章 IIS 与 ASP.NET /385 10.1 网站 /386 10.1.1 绑定 /386 10.1.2 网站应用程序 /388 10.1.3 虚拟目录 /389 10.2 通过 ISAPI 扩展 IIS /390 10.2.1 ISAPI 扩展 /391 10.2.2 ISAPI 过滤器 /392 10.2.3 CLR 是一个 COM 组件 /394 10.2.4 ASP.NET 中的ISAPI 扩展和过滤器 /396 10.2.5 ISAPI Rewrite /396 10.3 IIS 与 ASP.NET /397 10.3.1 IIS5 与 ASP.NET /397 10.3.2 IIS6 与 ASP.NET /398 10.3.3 IIS7 与 ASP.NET /399 10.4 创建网站的两种方法 /403 10.5 ASP.NET中的加密与解密 /405 10.5.1 machineKey /405 10.5.2 加密服务 /407 10.5.3 配置节的加密和解密 /408 10.6 本章小结 /410 第11 章 ASP.NET中的用户 /411 11.1 从IIS开始 /412 11.1.1 匿名用户方式 /413 11.1.2 基本身份验证 /413 11.1.3 摘要式身份验证 /414 11.1.4 集成 Windows 身份验证 /415 11.1.5 .NET Passport 身份验证 /416 11.2 ASP.NET中的用户信息 /416 11.2.1 基于 Windows 验证的用户 /416 11.2.2 基于 Forms 验证的用户 /417 11.2.3 基于 Passport 验证的用户 /420 11.2.4 在 IIS7 中使用表单验证 /420 11.3 .NET 中的用户 /421 11.3.1 用户的标识 IIdentity /421 11.3.2 用户 IPrincipal /422 11.4 网站中的用户 /423 11.5 成员管理 /423 11.5.1 用户的基本信息 /424 11.5.2 成员管理的约定 /425 11.5.3 基于 SQLServer 的成员管理实现 /426 11.5.4 自定义的成员管理实现 /427 11.5.5 辅助工具类 Membership /432 11.6 用户的扩展信息—个性化数据 /433 11.6.1 个性化数据的约定 /433 11.6.2 个性化数据的属性 /434 11.6.3 实现自定义的个性化数据管理 /436 11.6.4 匿名的个性化数据 /439 11.6.5 合并匿名用户的个性化数据 /441 11.6.6 基于 SQL Server 的个性化数据管理 /442 11.6.7 管理个性化数据 /444 11.7 执行程序的用户 /444 11.7.1 执行网站程序的 Windows 用户 /445 11.7.2 用户模拟的作用 /446 11.7.3 数据库连接串中的用户 /447 11.8 本章小结 /449 附录 自定义配置参数 /450

img
java自学之道

第一篇 基础篇 第0章 JDK安装和最简单的环境变量配置方法 第1章 Java基础概念 一、 Java基础语法 1、Helloworld.java 2、标识符 3、关键字 4、常量 5、变量 6、语句 6.1 if语句和switch语句 6.1.2 if语句举例 6.1.3 switch语句 6.2 for循环语句 6.3 while语句和do-while语句 6.3.1 while语句形式 6.3.2 do-while语句 6.3.3 while语句和do-while语句举例 6.4 break语句和continue语句 6.4.1 break语句 6.4.2 continue语句 二、类和对象 1、面向对象基础 1.1 面向对象程序设计入门分析 1.2 抽象 1.3 封装 2、类 2.1 类头 2.2类体 2.3 创建对象 2.4 面向对象举例 2.5 构造函数 2.5.1 构造函数的一般概念 2.5.2 创建自己的构造函数 2.5.3 构造方法注意事项 2.5.4构造函数的作用 3、方法 3.1 方法介绍 3.2方法定义 3.3调用方法 3.4 方法举例 4、访问控制符 5、this关键字 5.1 this方法应用举例 6. Static关键字 6.1 static应用举例 7. super关键字 7.1 super应用举例 8. abstract关键字 9. final关键字 9.1 final介绍 9.2 final使用注意事项 三、继承 1、继承的概念 1.1 继承的定义 1.2 继承举例 1.3 父类和子类 类继承 2.1 方法继承 2.2 方法覆盖 2.3 方法重载 3、多态与动态绑定 3.1 多态分为两种 3.2 调用一个对象方法的机制 3.3 方法调用举例 4、构造函数的重载 4.1 默认字段初始化 4.2 默认构造函数 4.3 显式字段初始化 4.4 构造函数被调用后的详细执行过程 5、包 5.1 创建包 5.2 创建可复用类的步骤简要说明 5.3 包的导入 5.4 包的可见性 接口 6.1 接口的概念 6.2 接口的声明 6.3 接口的实现 四、IO流及异常处理 1、流和文件 1.1 流 1.2 文件 2、常用流类 2.1 字节流 2.1.1 InputStream(输入流) 2.1.2 OutputStream(输出流) 2.1.3 FileInputStream(文件输入流) 2.1.4 FileOutputStream(文件输出流) 2.1.5 BufferedInputStream(缓冲输入流) 2.1.6 BufferedOutputStream(缓冲输出流) 2.1.7 PrintStream(打印流) 2.2字符流 2.2.1 Reader类 2.2.2 Writer类 2.2.3 FileReader类 2.2.4 FileWriter类 2.2.5 CharArrayReader类 2.2.6 CharArrayWriter类 2.2.7 BufferedReader类 2.2.8 BufferedWriter类 2.2.9 PrintWriter类 2.2.10 System.in对象和System.out对象 文件处理 3.1 创建或打开、关闭文件对象 3.2 关闭文件 3.3 read()方法 3.4 write()方法 3.5 其他操作文件的方法 4、Java异常处理 4.1 Java异常概念 4.2 异常类型 4.3 Java的内置异常 4.4 Java异常举例 4.5 异常的捕获和处理 4.6 异常抛出 4.6.1 throw语句 4.6.2 throws语句 4.6.3 finally语句 4.7 自定义异常类 4.8 异常应用的其他问题 4.9 异常应用举例 五、线程 1、线程的概念 1.1 程序、进程与线程 1.2 线程调度与优先级 1.3 线程的状态与生命周期 1.4 控制一个线程生命周期最常用的方法 2、线程的创建和启动 3、线程的同步与死锁 3.1 同步的概念 3.2 线程同步举例 3.3 线程死锁 六、GUI 1、图形用户界面概述 1.1 组件 1.2容器 1.3 AWT组件 1.4 Swing组件 1.5 组件与容器的关系 1.6 swing常用组件 2、Swing常用组件 2.1文本组件 2.2 标签 2.3 按钮 2.4单选按钮组件 2.5 复选框组件 2.6列表框组件 2.7组合框组件 2.8滑块组件 事件处理 3.1 事件处理原理 3.2 事件架构 3.3 焦点事件 3.4 键盘事件 3.5 鼠标事件 4、布局设计 4.1 FlowLayout流布局 4.2 BorderLayout边界布局 4.3 CardLayout卡式布局 4.4 GridLayout卡式布局 4.5 GridBagLayout卡式布局 4.6 BoxLayout盒式布局 5、菜单步骤 6、对话框设计 6.1 JOptionPane对话框 6.2 JDialog对话框 文字与图形处理 7.1 文本和字体 7.2 简单图形绘制 7.3 颜色 7.4 图像处理 七、网络 1、Java网络编程简介 1.1 IP网间协议 1.2 TCP传输控制协议 1.3 UDP用户数据包协议 2、URL连接 2.1 URL 2.2 Java.net包中URL类定义 2.3 创建URL对象 2.4 Java.net包中URLConnection类 2.5 AppletContext接口类 2.6 获取网络属性信息 2.7 创建输入流(InputStream)对象 3、SOCKET连接 3.1 Socket通信的一般结构 3.2 TCP Socket编程 3.2.1 Socket类 3.2.2 ServerSocket类 3.3 UDP Socket编程 八、Java概念疑难解答 第2章 Java经典练习题 2.1 斐波那契数列 2.2 判断素数 2.3 水仙花数 2.4 分解质因数 2.5 杨辉三角 2.6 学习成绩查询 2.7 求最大公约数与最小公倍数 2.8 完全平方数 2.9 统计字母、空格、数字和其它字符个数 2.10 求主对角线之和 2.11 完数求解 2.12 求s=a+aa+aaa+aaaa+aa...a的值 2.13 高度计算 2.14 乘法口诀 2.15 无重复三位数 2.16 菱形打印 2.17 利润计算 2.18 第几天判断 2.19 从小到大输出数列 2.20 猴子吃桃问题 2.21 乒乓球比赛 2.22 求分数之和 2.23 求阶乘的和 2.24 递归求法 2.25 求不多于5的正整数 2.26 回文判断 2.27 星期判断 2.28 插数入数组 2.29 取整数的任意位 2.30 按顺序输出数列 2.31 位置替换 2.32 字符串排序 2.33 贷款器 2.34 通讯录排序 2.35 闰年判断 2.36 二元方程求解 2.37 密码解译 2.38 DVD查询 2.39 电子日历 2.40 万年历 第二篇 提高篇 第3章 Java常用算法 3.1递归算法 3.2冒泡排序算法 3.3 快速排序算法 3.4选择排序算法 3.5直接插入算法 3.6希尔排序算法 3.7 二分查找算法 3.8 二叉树 3.9 图的实现 3.10 生产者消费者的实现 3.11 银行家算法 3.12 KMP算法 3.13 RSA的实现 第4章 IO流实例开发 4.1流到底怎样输入和输出扯淡区 4.2 FileInputStream的应用 4.3 FileOutputStream的应用 4.4 FileReader的应用 4.5 FileWriter的应用 4.6 BufferedInputStream的应用 4.7 BufferedOutputStream的应用 4.8 BufferedReader的应用 4.9 BufferedWriter的应用 第5章 Java图形界面开发 5.1 开发自己的控件 5.2 控件的排布示例 5.3 开发自己的QQ聊天系统 5.4 颜色选择器 5.5 按钮测试 5.6 密码验证器 5.7 绘制自己的坐标 5.8 多种字体显示 5.9 窗口风格选择器 5.10 右键菜单 5.11 树形关系网 5.12 开发自己的文本编辑器 5.13 开发自己的剪切板 5.14 文本拖动效果演示 5.15 怎样拖动图片 5.16 开发自己的数字时钟 5.17 数字动画 5.18 滑杆调试器 5.19 启动程序开发 5.20 开发自己的调色板 5.21 文件选择器 5.22 丰富多彩的光标选择器 5.23 开发自己的浏览器 5.24 文字抖动效果演示 5.25 文字阴影效果演示 5.26 3D文字效果演示 5.27 波浪文字效果演示 5.28 飞行文字效果演示 5.29 伸展文字效果演示 5.30 开发自己的网页图片 5.31 火焰图片效果演示 5.32 图片百叶窗效果演示 5.33 图片倒影效果演示 5.34 怎样翻转图片 5.35 开发自己的闹钟 5.36 应用自己的万年历 5.37 开发自己的计算器 5.38 开发自己的电子相册 第6章 Java游戏 6.1 俄罗斯方块 6.2 连连看游戏 6.3 迷宫 6.4 模拟闪电 6.5 扫雷 6.6 贪食蛇 6.7 围棋 6.8 五子棋 6.9 人机猜拳游戏 第三篇 实战篇 第7章 项目开发 7.1 开发自己的浏览器 7.2 开发自己的象棋游戏 7.3 网络主机线程扫描与端口控制

img
jQuery基础教程4th

图书简介:  《jQuery基础教程(第4版)》是jQuery经典技术教程的最新升级版,涵盖jQuery 1.10.x和jQuery2.0.x。本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQueryUI、jQueryMobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加深入地探讨了jQuery的各种特性及一些高级技术。附录A特别讲解了JavaScript中闭包的概念,以及如何在jQuery中有效地使用闭包。附录B讲解了使用QUnit测试JavaScript代码的必备知识。附录C给出了jQueryAPI的快速参考。  《jQuery基础教程(第4版)》注重理论与实践相结合,由浅入深、循序渐进,适合各层次的前端Web开发人员学习和参考。 图书目录: 第1章 jQuery入门  1.1 jQuery能做什么  1.2 jQuery为什么如此出色  1.3 第一个jQuery驱动的页面  1.3.1 下载jQuery  1.3.2 本书使用jQuery的哪个版本  1.3.3 在HTML文档中引入jQuery  1.3.4 编写jQuery代码  1.3.5 最终结果  1.4 纯JavaScript与jQuery  1.5 使用开发工具  1.6 小结  第2章 选择元素  2.1 理解DOM  2.2 使用$()函数  2.3 CSS选择符  2.4 属性选择符  2.5 自定义选择符  2.5.1 每隔一行为表格添加样式  2.5.2 基于上下文内容选择元素  2.5.3 基于表单的选择符  2.6 DOM遍历方法  2.6.1 为特定单元格添加样式  2.6.2 连缀  2.7 访问DOM元素  2.8 小结  2.9 练习  第3章 事件  3.1 在页面加载后执行任务  3.1.1 代码执行的时机选择  3.1.2 基于一个页面执行多个脚本  3.1.3 .ready()的简写形式  3.1.4 向.ready()回调函数中传入参数  3.2 处理简单的事件  3.2.1 简单的样式转换器  3.2.2 启用其他按钮  3.2.3 利用事件处理程序的上下文  3.2.4 使用事件上下文进一步减少代码  3.2.5 简写的事件  3.2.6 显示和隐藏高级特性  3.3 事件传播  3.3.1 事件的旅程  3.3.2 事件冒泡的副作用  3.4 通过事件对象改变事件的旅程  3.4.1 事件目标  3.4.2 停止事件传播  3.4.3 阻止默认操作  3.4.4 事件委托  3.4.5 使用内置的事件委托功能  3.5 移除事件处理程序  3.5.1 为事件处理程序添加命名空间  3.5.2 重新绑定事件  3.6 模仿用户操作  3.7 小结  3.8 练习  第4章 样式与动画  4.1 修改内联CSS  4.1.1 设置计算的样式属性值  4.1.2 带厂商前缀的样式属性  4.2 隐藏和显示元素  4.3 效果和时长  4.3.1 指定显示速度  4.3.2 淡入和淡出  4.3.3 滑上和滑下  4.3.4 切换可见性  4.4 创建自定义动画  4.4.1 手工创建效果  4.4.2 一次给多个属性添加动画效果  4.5 并发与排队效果  4.5.1 处理一组元素  4.5.2 处理多组元素  4.5.3 简单概括  4.6 小结  4.7 练习  第5章 操作DOM  5.1 操作属性  5.1.1 非类属性  5.1.2 DOM元素属性  5.1.3 表单控件的值  5.2 DOM树操作  5.2.1 重新认识$()函数  5.2.2 创建新元素  5.2.3 插入新元素  5.2.4 移动元素  5.2.5 包装元素  5.2.6 使用反向插入方法  5.3 复制元素  5.4 内容setter和getter方法  5.5 DOM操作方法的简单归纳  5.6 小结  5.7 练习  第6章 通过Ajax发送数据  6.1 基于请求加载数据  6.1.1 追加HTML  6.1.2 操作JavaScript对象  6.1.3 加载XML文档  6.2 选择数据格式  6.3 向服务器传递数据  6.3.1 执行GET请求  6.3.2 执行POST请求  6.3.3 序列化表单  6.4 为Ajax请求提供不同的内容  6.5 关注请求  6.6 错误处理  6.7 Ajax和事件  6.8 安全限制  6.9 其他工具  6.9.1 低级Ajax方法  6.9.2 修改默认选项  6.9.3 部分加载HTML页面  6.10 小结  6.11 练习  第7章 使用插件  7.1 查找插件和帮助  7.2 使用插件  7.2.1 下载并包含Cycle插件  7.2.2 调用插件提供的方法  7.2.3 为插件方法指定参数  7.2.4 修改参数默认值  7.3 其他形式的插件  7.3.1 自定义选择符  7.3.2 全局函数插件  7.4 jQuery UI插件库  7.4.1 效果  7.4.2 交互组件  7.4.3 部件  7.4.4 jQuery UI主题卷轴  7.5 jQuery Mobile插件库  7.5.1 HTML5自定义数据属性  7.5.2 移动导航  7.5.3 一个文档支持多个页面  7.5.4 交互式元素  7.5.5 高级功能  7.6 小结  7.7 练习  第8章 开发插件  8.1 在插件中使用$别名  8.2 添加新的全局函数  8.3 添加jQuery对象方法  8.3.1 对象方法的上下文  8.3.2 隐式迭代  8.3.3 方法连缀  8.4 提供灵活的方法参数  8.4.1 参数对象  8.4.2 默认参数值  8.4.3 回调函数  8.4.4 可定制的默认值  8.5 使用jQuery UI部件工厂创建插件  8.5.1 创建部件  8.5.2 销毁部件  8.5.3 启用和禁用部件  8.5.4 接受部件选项  8.5.5 添加子方法  8.5.6 触发部件事件  8.6 插件设计建议  8.7 小结  8.8 练习  第9章 高级选择符与遍历  9.1 深入选择与遍历  9.1.1 动态筛选表格内容  9.1.2 为表格行添加条纹效果  9.1.3 组合筛选与条纹  9.1.4 更多选择符与遍历方法  9.2 定制与优化选择符  9.2.1 编写定制的选择符插件  9.2.2 选择符的性能问题  9.3 DOM遍历背后的秘密  9.3.1 jQuery对象属性  9.3.2 DOM元素栈  9.3.3 编写DOM遍历方法插件  9.3.4 DOM遍历的性能问题  9.4 小结  9.5 练习  第10章 高级事件处理  10.1 再谈事件  10.1.1 追加数据页面  10.1.2 悬停时显示数据  10.2 事件委托  10.2.1 使用jQuery的委托方法  10.2.2 选择委托的作用域  10.2.3 早委托  10.3 自定义事件  10.3.1 无穷滚动  10.3.2 自定义事件参数  10.4 节流事件  10.5 扩展事件  10.6 小结  10.7 练习  第11章 高级效果  11.1 再谈动画  11.2 观测及中断动画  11.2.1 确定动画状态  11.2.2 中止运行的动画  11.3 全局效果属性  11.3.1 禁用所有效果  11.3.2 定义效果时长  11.4 多属性缓动  11.5 使用延迟对象  11.6 精细地控制动画  11.7 小结  11.8 练习  第12章 高级DOM操作  12.1 排序表格行  12.1.1 服务器端排序  12.1.2 Ajax排序  12.1.3 JavaScript排序  12.2 移动和插入元素  12.2.1 为已有的文本添加链接  12.2.2 简单的JavaScript数组排序  12.2.3 对DOM元素排序  12.3 在DOM元素中保存数据  12.3.1 执行预先计算  12.3.2 存储非字符串数据  12.3.3 变换排序方向  12.4 使用HTML5自定义数据属性  12.5 使用JSON排序和构建行  12.5.1 修改JSON对象  12.5.2 按需重新构建内容  12.6 高级属性操作  12.6.1 简捷地创建元素  12.6.2 DOM创建挂钩  12.7 小结  12.8 练习  第13章 高级Ajax  13.1 渐进增强与Ajax  13.2 处理Ajax错误  13.3 jqXHR对象  13.3.1 Ajax承诺  13.3.2 缓存响应  13.4 截流Ajax请求  13.5 扩展Ajax功能  13.5.1 数据类型转换器  13.5.2 Ajax预过滤器  13.5.3 替代传输方式  13.6 小结  13.7 练习  附录A JavaScript闭包  A.1 创建内部函数  A.1.1 在任何地方调用内部函数  A.1.2 理解变量作用域  A.2 处理闭包之间的交互  A.3 在jQuery中创建闭包  A.3.1 $(document).ready()的参数  A.3.2 绑定事件处理程序  A.3.3 在循环中绑定处理程序  A.3.4 命名及匿名函数  A.4 应对内存泄漏的风险  A.4.1 避免意外的引用循环  A.4.2 控制DOM与JavaScript的循环  A.5 小结  附录B 使用QUnit测试JavaScript  B.1 下载QUnit  B.2 设置文档  B.3 组织测试  B.4 添加和运行测试  B.5 其他测试类型  B.6 最佳实践  B.7 小结  附录C 简明参考  C.1 选择符表达式  C.1.1 简单的CSS选择符  C.1.2 在同辈元素间定位  C.1.3 在匹配的元素间定位  C.1.4 属性  C.1.5 表单  C.1.6 其他自定义选择符  C.2 DOM遍历方法  C.2.1 筛选元素  C.2.2 后代元素  C.2.3 同辈元素  C.2.4 祖先元素  C.2.5 集合操作  C.2.6 操作选中的元素  C.3 事件方法  C.3.1 绑定  C.3.2 简写绑定  C.3.3 触发事件  C.3.4 简写触发方法  C.3.5 实用方法  C.4 效果方法  C.4.1 预定义效果  C.4.2 自定义动画  C.4.3 队列操作  C.5 DOM操作方法  C.5.1 特性与属性  C.5.2 内容  C.5.3 CSS  C.5.4 尺寸  C.5.5 插入  C.5.6 替换  C.5.7 删除  C.5.8 复制  C.5.9 数据  C.6 Ajax方法  C.6.1 发送请求  C.6.2 监视请求  C.6.3 配置  C.6.4 实用方法  C.7 延迟方法  C.7.1 创建对象  C.7.2 延迟对象的方法  C.7.3 承诺对象的方法  C.8 其他方法  C.8.1 jQuery对象的属性  C.8.2 数组和对象  C.8.3 对象内省  C.8.4 其他

img
Java语言程序设计项目教程.doc

适合初学者的文档 1.2编写一个最简单的Java程序 9 任务三 第一个Java程序 10 任务四 Eclipse集成开发工具 11 1.3 Java应用程序运行机制 16 任务五 Java的运行机制 16 第2章 Java语言基础知识 18 2.1 Java语言基本数据类型 18 任务一 Java标识符和关键字 18 任务二 Java基本数据类型 20 任务三 Java字符类型 21 任务四 Java数据类型间的相互转换 22 2.2 Java运算符与表达式 24 任务五 赋值运算符与算数运算符 24 任务六 比较运算符和逻辑运算符 26 任务七 位运算符 27 任务八 三元运算符与运算符优先级 29 2.3 Java流程控制 30 2.3.1选择结构 31 任务九 if选择结构 31 任务十 if-else选择结构 31 任务十一if-else if多分支选择结构 32 任务十二switch-case多分支选择结构 34 2.3.2循环结构 35 任务十三 while语句 35 任务十四 do…while语句 36 任务十五 for循环语句 37 2.3.3 程序跳转语句 38 任务十六 break语句 38 任务十七 continue语句 39 2.4 Java数组 40 任务十八 一维数组的声明、创建和初始化 40 任务十九 二维数组的声明、创建和初始化 42 第3章 类与对象 47 3.1类的定义 47 任务一 定义学生类 47 3.2类的实例化 50 任务二 Student类对象的创建与使用 50 3.3引用数据类型的传递 53 任务三 妖怪的瞬移 53 3.4 方法 55 任务四 方法的定义与调用 55 任务五 方法调用时参数的传递 56 任务六 方法的重载 57 任务七 方法的递归调用 59 任务八 方法中数组的引用传递 60 第4章 类的封装、继承与访问控制 62 4.1封装 62 任务一 人员类的定义 62 4.2继承 63 任务二 学生类、教师类的定义 63 4.3包与访问控制 66 任务三 类中成员的可见性 66 第5章 抽象类和接口 73 5.1抽象类 73 任务一 图书销售 73 5.2接口 76 任务二 游戏中场景的模拟绘制 76 第6章 异常 81 6.1异常的概念 81 任务一 了解异常 81 6.2 异常处理 83 任务二 异常处理的方法 83 6.3 多重catch语句 86 任务三 多重catch块的异常处理的方法 86 6.4 使用 throw 和 throws 88 任务四 异常抛出的方法 88 任务五 throws语句的使用方法 89 6.5 自定义异常 92 任务五 掌握自定义异常 92 第7章 常用类 95 7.1 Object类 95 任务一 Object类的使用 95 7.2 String类 97 任务二 String类对象的创建 97 任务三 String类对象的的使用 98 任务四 String类对象的检索 101 任务五 提取字符串 102 7.3 StringBuffer类 103 任务六 StringBuffer类的创建和使用 103 7.4 日期相关类 106 任务七 Date类的创建和使用 106 任务八 Calendar类的创建和使用 107 7.5 包装类 109 任务九 包装类的使用 109 7.6 Math类 110 任务十 Maht类的使用 110 7.7 Random类 112 任务十一Random类的使用 112 第8章 集合 114 8.1集合类 114 任务一 足球比赛 114 8.2映射类 122 任务二 篮球比赛 122 第9章 流 128 9.1 File类与字符流类的使用 128 任务一 复制文件并统计数据 128 9.2 字节流类的使用 134 任务二 输出文件内容 134 第10章 JDBC 139 10.1 JDBC的主要作用 139 任务一 通过JDBC-ODBC显示Students数据库中的内容 139 任务二 通过JDBC-ODBC更新Students数据库中的内容 146 10.2 DAO模式 148 任务三 通信录管理系统 148 10.3 JDBC中的事务处理步骤及实现对象 160 任务四 JDBC中的事务处理 160 第11章 Swing 163 11.1 AWT简介 163 11.2 Swing与AWT的关系 163 11.3窗体和常用组件 163 任务一 实现一个用户登录界面 163 11.4JPanel 167 任务二 JPanel的基础用法 167 11.5布局管理器 168 任务三 布局管理器的使用 168 11.6 事件处理 171 任务四 实现用户登陆验证 171 任务五 实现鼠标和窗体监听 173 11.7常用组件:菜单、单选框、下拉列表框 175 任务六 实现“添加学生信息”图形界面 175 第12章 学员信息管理系统 180 12.1功能介绍 180 12.2数据库设计 180 12.3 用户管理模块的实现 181 任务一 创建数据库 181 任务二 创建项目Students和用户类User 182 任务三 创建数据库连接类DataBaseConnection 183 任务四 创建用户管理类UserManage 184 任务五 完成用户登陆界面LoginFrame 189

img
关于JVM的总结

类的生命周期: 加载->(验证->准备->解析)(连接)->初始化->使用->卸载 类被加载到虚拟机内存开始,到卸载出内存为止,生命周期包含: 加载,验证,准备,解析,初始化,使用,卸载 7个阶段,加载,验证,准备,初始化和卸载这5个顺序是确定的,解析阶段则不一定,他在某些情况下可以在初始化阶段之后在开始,这是为了支持Java语言的运行时绑定。 类加载机制: 加载:通过类的全限定名,将类加载如方法区,在内存中生成一个java.lang.Class对象, 作为方法区这个类的各种数据访问入口. 验证:确保Class文件的字节流包含的信息符合当前虚拟机的要求. 准备:正式为类变量分配内存,并设置变量初始值.这些变量都存储在方法区. 解析:将常量池中的符号引用替换为直接引用的过程,虚拟机不会重新再解析而是通过缓存去拿出解析的数据 初始化:在准备阶段已经赋过一个系统要求的初始值,而在初始化阶段则通过程序制定的主管计划去初始化变量和其他资源,从另一个角度理解就是 执行类构造器的()方法 .()方法是由编译器自动收集类中的所有变量的复制动作和静态语句中的语句合并产生的. 静态语句块中只能访问到定义在静态语句块之前的变量,定义在他之后的,在静态语句块中只能赋值不能访问

img
jQuery基础教程(第四版)

内容简介 · · · · · · 本书由jQuery API网站维护者亲自撰写,第一版自2008上市以来,一版再版,累计重印14次,是国内首屈一指的jQuery经典著作! 作为最新升级版,本书涵盖jQuery 1.10.x和jQuery 2.0.x。本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加深入地探讨了jQuery的各种特性及一些高级技术。附录A特别讲解了JavaScript中闭包的概念,以及如何在jQuery中有效地使用闭包。附录B讲解了使用QUnit测试JavaScript代码的必备知识。附录C给出了jQuery API的快速参考。 作者简介 · · · · · · Jonathan Chaffer 资深Web专家,著名jQuery资源网站LearningjQuery.com创始人。他还是著名的开源Drupal CMS项目的核心开发人员,开发了广受欢迎的Content Construction Kit模块并大幅修改了菜单系统。 Karl Swedberg 资深Web程序员,就职于Fusionary Media。著名jQuery资源网站LearningjQuery.com创始人。 目录 · · · · · · 目 录 第1章 jQuery入门  1 1.1  jQuery能做什么  1 1.2  jQuery为什么如此出色  2 1.3  第一个jQuery驱动的页面  3 1.3.1  下载jQuery  4 1.3.2  本书使用jQuery的哪个版本  4 1.3.3  在HTML文档中引入jQuery  4 1.3.4  编写jQuery代码  7 1.3.5  最终结果  9 1.4  纯JavaScript与jQuery  9 1.5  使用开发工具  10 1.6  小结  13 第2章 选择元素  14 2.1  理解DOM  14 2.2  使用$()函数  15 2.3  CSS选择符  16 2.4  属性选择符  19 2.5  自定义选择符  21 2.5.1  每隔一行为表格添加样式  22 2.5.2  基于上下文内容选择元素  25 2.5.3  基于表单的选择符  26 2.6  DOM遍历方法  27 2.6.1  为特定单元格添加样式  28 2.6.2  连缀  30 2.7  访问DOM元素  31 2.8  小结  32 2.9  练习  32 第3章 事件  33 3.1  在页面加载后执行任务  33 3.1.1  代码执行的时机选择  33 3.1.2  基于一个页面执行多个脚本  34 3.1.3  .ready()的简写形式  35 3.1.4  向.ready()回调函数中传入参数  36 3.2  处理简单的事件  36 3.2.1  简单的样式转换器  36 3.2.2  启用其他按钮  39 3.2.3  利用事件处理程序的上下文  40 3.2.4  使用事件上下文进一步减少代码  41 3.2.5  简写的事件  43 3.2.6  显示和隐藏高级特性  43 3.3  事件传播  45 3.3.1  事件的旅程  46 3.3.2  事件冒泡的副作用  47 3.4  通过事件对象改变事件的旅程  48 3.4.1  事件目标  49 3.4.2  停止事件传播  49 3.4.3  阻止默认操作  50 3.4.4  事件委托  50 3.4.5  使用内置的事件委托功能  53 3.5  移除事件处理程序  53 3.5.1  为事件处理程序添加命名空间  54 3.5.2  重新绑定事件  54 3.6  模仿用户操作  56 3.7  小结  59 3.8  练习  60 第4章 样式与动画  61 4.1  修改内联CSS  61 4.1.1  设置计算的样式属性值  63 4.1.2  带厂商前缀的样式属性  65 4.2  隐藏和显示元素  66 4.3  效果和时长  68 4.3.1  指定显示速度  68 4.3.2  淡入和淡出  69 4.3.3  滑上和滑下  70 4.3.4  切换可见性  71 4.4  创建自定义动画  72 4.4.1  手工创建效果  73 4.4.2  一次给多个属性添加动画效果  73 4.5  并发与排队效果  76 4.5.1  处理一组元素  77 4.5.2  处理多组元素  80 4.5.3  简单概括  83 4.6  小结  84 4.7  练习  84 第5章 操作DOM  85 5.1  操作属性  85 5.1.1  非类属性  85 5.1.2  DOM元素属性  89 5.1.3  表单控件的值  90 5.2  DOM树操作  90 5.2.1  重新认识$()函数  90 5.2.2  创建新元素  91 5.2.3  插入新元素  91 5.2.4  移动元素  92 5.2.5  包装元素  94 5.2.6  使用反向插入方法  96 5.3  复制元素  99 5.4  内容setter和getter方法  101 5.5  DOM操作方法的简单归纳  103 5.6  小结  104 5.7  练习  104 第6章 通过Ajax发送数据  106 6.1  基于请求加载数据  106 6.1.1  追加HTML  107 6.1.2  操作JavaScript对象  110 6.1.3  加载XML文档  115 6.2  选择数据格式  118 6.3  向服务器传递数据  119 6.3.1  执行GET请求  120 6.3.2  执行POST请求  123 6.3.3  序列化表单  124 6.4  为Ajax请求提供不同的内容  126 6.5  关注请求  127 6.6  错误处理  129 6.7  Ajax和事件  131 6.8  安全限制  132 6.9  其他工具  134 6.9.1  低级Ajax方法  134 6.9.2  修改默认选项  135 6.9.3  部分加载HTML页面  135 6.10  小结  138 6.11  练习  138 第7章 使用插件  139 7.1  查找插件和帮助  139 7.2  使用插件  139 7.2.1  下载并包含Cycle插件  140 7.2.2  调用插件提供的方法  140 7.2.3  为插件方法指定参数  142 7.2.4  修改参数默认值  142 7.3  其他形式的插件  143 7.3.1  自定义选择符  143 7.3.2  全局函数插件  144 7.4  jQuery UI插件库  145 7.4.1  效果  145 7.4.2  交互组件  148 7.4.3  部件  149 7.4.4  jQuery UI主题卷轴  151 7.5  jQuery Mobile插件库  152 7.5.1  HTML5自定义数据属性  152 7.5.2  移动导航  153 7.5.3  一个文档支持多个页面  157 7.5.4  交互式元素  158 7.5.5  高级功能  161 7.6  小结  161 7.7  练习  161 第8章 开发插件  163 8.1  在插件中使用$别名  163 8.2  添加新的全局函数  163 8.3  添加jQuery对象方法  169 8.3.1  对象方法的上下文  169 8.3.2  隐式迭代  170 8.3.3  方法连缀  171 8.4  提供灵活的方法参数  172 8.4.1  参数对象  173 8.4.2  默认参数值  174 8.4.3  回调函数  175 8.4.4  可定制的默认值  176 8.5  使用jQuery UI部件工厂创建插件  177 8.5.1  创建部件  178 8.5.2  销毁部件  180 8.5.3  启用和禁用部件  181 8.5.4  接受部件选项  182 8.5.5  添加子方法  183 8.5.6  触发部件事件  183 8.6  插件设计建议  184 8.7  小结  185 8.8  练习  185 第9章 高级选择符与遍历  187 9.1  深入选择与遍历  187 9.1.1  动态筛选表格内容  189 9.1.2  为表格行添加条纹效果  191 9.1.3  组合筛选与条纹  192 9.1.4  更多选择符与遍历方法  193 9.2  定制与优化选择符  194 9.2.1  编写定制的选择符插件  194 9.2.2  选择符的性能问题  196 9.3  DOM遍历背后的秘密  199 9.3.1  jQuery对象属性  199 9.3.2  DOM元素栈  201 9.3.3  编写DOM遍历方法插件  201 9.3.4  DOM遍历的性能问题  203 9.4  小结  205 9.5  练习  205 第10章 高级事件处理  206 10.1  再谈事件  206 10.1.1  追加数据页面  208 10.1.2  悬停时显示数据  209 10.2  事件委托  210 10.2.1  使用jQuery的委托方法  211 10.2.2  选择委托的作用域  212 10.2.3  早委托  212 10.3  自定义事件  213 10.3.1  无穷滚动  215 10.3.2  自定义事件参数  216 10.4  节流事件  217 10.5  扩展事件  219 10.6  小结  222 10.7  练习  222 第11章 高级效果  223 11.1  再谈动画  223 11.2  观测及中断动画  225 11.2.1  确定动画状态  226 11.2.2  中止运行的动画  226 11.3  全局效果属性  227 11.3.1  禁用所有效果  228 11.3.2  定义效果时长  228 11.4  多属性缓动  230 11.5  使用延迟对象  231 11.6  精细地控制动画  234 11.7  小结  236 11.8  练习  236 第12章 高级DOM操作  237 12.1  排序表格行  237 12.1.1  服务器端排序  237 12.1.2  Ajax排序  238 12.1.3  JavaScript排序  238 12.2  移动和插入元素  240 12.2.1  为已有的文本添加链接  240 12.2.2  简单的JavaScript数组排序  241 12.2.3  对DOM元素排序  241 12.3  在DOM元素中保存数据  243 12.3.1  执行预先计算  244 12.3.2  存储非字符串数据  245 12.3.3  变换排序方向  247 12.4  使用HTML5自定义数据属性  249 12.5  使用JSON排序和构建行  250 12.5.1  修改JSON对象  252 12.5.2  按需重新构建内容  253 12.6  高级属性操作  254 12.6.1  简捷地创建元素  254 12.6.2  DOM创建挂钩  255 12.7  小结  257 12.8  练习  258 第13章 高级Ajax  259 13.1  渐进增强与Ajax  259 13.2  处理Ajax错误  264 13.3  jqXHR对象  265 13.3.1  Ajax承诺  266 13.3.2  缓存响应  267 13.4  截流Ajax请求  268 13.5  扩展Ajax功能  269 13.5.1  数据类型转换器  269 13.5.2  Ajax预过滤器  274 13.5.3  替代传输方式  274 13.6  小结  277 13.7  练习  278 附录A  JavaScript闭包  279 A.1  创建内部函数  279 A.1.1  在任何地方调用内部函数  280 A.1.2  理解变量作用域  281 A.2  处理闭包之间的交互  283 A.3  在jQuery中创建闭包  284 A.3.1  $(document).ready() 的参数  284 A.3.2  绑定事件处理程序  285 A.3.3  在循环中绑定处理程序  286 A.3.4  命名及匿名函数  288 A.4  应对内存泄漏的风险  289 A.4.1  避免意外的引用循环  290 A.4.2  控制DOM与JavaScript的循环  290 A.5  小结  292 附录B  使用QUnit测试JavaScript  293 B.1  下载QUnit  293 B.2  设置文档  293 B.3  组织测试  294 B.4  添加和运行测试  295 B.5  其他测试类型  299 B.6  最佳实践  299 B.7  小结  300 附录C  简明参考  301 C.1  选择符表达式  301 C.1.1  简单的CSS选择符  301 C.1.2  在同辈元素间定位  301 C.1.3  在匹配的元素间定位  302 C.1.4  属性  302 C.1.5  表单  303 C.1.6  其他自定义选择符  303 C.2  DOM遍历方法  304 C.2.1  筛选元素  304 C.2.2  后代元素  304 C.2.3  同辈元素  304 C.2.4  祖先元素  305 C.2.5  集合操作  305 C.2.6  操作选中的元素  306 C.3  事件方法  306 C.3.1  绑定  306 C.3.2  简写绑定  307 C.3.3  触发事件  307 C.3.4  简写触发方法  308 C.3.5  实用方法  308 C.4  效果方法  308 C.4.1  预定义效果  308 C.4.2  自定义动画  309 C.4.3  队列操作  309 C.5  DOM操作方法  309 C.5.1  特性与属性  310 C.5.2  内容  310 C.5.3  CSS  310 C.5.4  尺寸  311 C.5.5  插入  311 C.5.6  替换  312 C.5.7  删除  312 C.5.8  复制  312 C.5.9  数据  312 C.6  Ajax方法  312 C.6.1  发送请求  313 C.6.2  监视请求  313 C.6.3  配置  313 C.6.4  实用方法  314 C.7  延迟方法  314 C.7.1  创建对象  314 C.7.2  延迟对象的方法  314 C.7.3  承诺对象的方法  315 C.8  其他方法  315 C.8.1  jQuery对象的属性  315 C.8.2  数组和对象  315 C.8.3  对象内省  316 C.8.4  其他  316

img
第一行代码Java:视频讲解版.李兴华(带详细书签).pdf

第 一行代码 Java 视频讲解版从初学者的角度,以丰富的例子、通俗易懂的语言、简单的图示,详细地介绍了Java开发中重点用到的多种技术。全书分为15章,包括Java简介、程序基本概念、面向对象基本概念、面向对象高 级知识、包及访问控制权限、异常的捕获及处理、Eclipse开发工具、Java新特性、多线程、Java常用类库、Java IO编程、Java网络编程、Java类集框架、Java数据库编程、DAO设计模式等内容。 第 一行代码 Java 视频讲解版列举了700多个小实例、100多个示意图,方便读者快速理解和应用。本书还附带了长达60小时的教学视频、源代码和PPT电子教案,另外专门提供了论坛为读者解答问题。本书作者有多年的开发和教学经验,希望能成为读者的良师益友。 第 一行代码 Java 视频讲解版面向Java技术的初学者,适合作为培训中心、计算机相关专业的教材。 第一部分 Java基础知识 1 第1章 Java简介 2 1.1 Java简介 2 1.2 JDK的安装与配置 8 1.3 第一个Java程序:永远的“Hello World !” 11 1.4 第一个程序解释 12 1.5 CLASSPATH 14 本章小结 15 课后习题 16 第2章 程序基本概念 17 2.1 Java的注释 17 2.2 标识符与关键字 19 2.3 数据类型划分 20 2.3.1 整型 22 2.3.2 浮点数 27 2.3.3 字符型 29 2.3.4 布尔型 31 2.3.5 String型数据 31 2.4 运算符 33 2.4.1 关系运算符 36 2.4.2 数学运算符 37 2.4.3 三目运算 40 2.4.4 逻辑运算 41 2.4.5 位运算 44 2.5 程序逻辑控制 46 2.5.1 分支结构 47 2.5.2 循环结构 52 2.5.3 循环控制 58 2.6 方法的定义及使用 59 2.6.1 方法的基本概念 59 2.6.2 方法的重载 63 2.6.3 方法的递归调用 65 本章小结 66 课后习题 66 第二部分 面向对象 69 第3章 面向对象基本概念 70 3.1 面向对象简介 70 3.2 类与对象 72 3.2.1 类与对象的基本概念 72 3.2.2 类与对象的基本定义 73 3.2.3 引用数据的初步分析 78 3.3 封装性初步分析 82 3.4 构造方法 85 3.5 匿名对象 90 3.6 简单Java类 91 3.7 数组 93 3.7.1 数组的基本概念 93 3.7.2 二维数组 97 3.7.3 数组与方法参数的传递 98 3.7.4 数组操作方法 108 3.7.5 对象数组 109 3.8 String类的基本概念 111 3.8.1 String类的两种实例化方式 111 3.8.2 字符串的比较1 112 3.8.3 字符串常量就是String的匿名对象 114 3.8.4 两种实例化方式的区别 115 3.8.5 字符串一旦定义则不可改变 118 3.9 String类的常用方法 120 3.9.1 字符与字符串 122 3.9.2 字节与字符串 125 3.9.3 字符串的比较2 126 3.9.4 字符串的查找 127 3.9.5 字符串的替换 129 3.9.6 字符串的截取 130 3.9.7 字符串的拆分 130 3.9.8 其他方法 133 3.10 this关键字 136 3.10.1 调用本类属性 136 3.10.2 调用本类方法 138 3.10.3 表示当前对象 143 3.11 引用传递 144 3.11.1 引用传递基本概念 144 3.11.2 引用传递实际应用 148 3.12 数据表与简单Java类映射 153 3.13 对象比较 156 3.14 static关键字 160 3.14.1 static定义属性 160 3.14.2 static定义方法 162 3.14.3 主方法 164 3.14.4 static的实际应用 165 3.15 代码块 167 3.15.1 普通代码块 167 3.15.2 构造块 168 3.15.3 静态块 168 3.16 内部类 170 3.16.1 基本概念 170 3.16.2 使用static定义内部类 174 3.16.3 在方法中定义内部类 175 3.17 链表 177 3.17.1 链表的基本形式 178 3.17.2 链表的基本雏形 181 3.17.3 开发可用链表 184 3.17.4 使用链表 194 本章小结 200 课后习题 201 第4章 面向对象高级知识 204 4.1 继承性 204 4.1.1 继承问题的引出 204 4.1.2 继承的实现 205 4.1.3 继承的限制 207 4.2 覆写 211 4.2.1 方法的覆写 211 4.2.2 属性的覆盖 217 4.3 继承案例 218 4.3.1 开发数组的父类 219 4.3.2 开发排序类 221 4.3.3 开发反转类 222 4.4 final关键字 223 4.5 多态性 224 4.6 抽象类 230 4.6.1 抽象类定义 230 4.6.2 抽象类的相关限制 232 4.6.3 抽象类应用——模板设计模式 236 4.7 接口 240 4.7.1 接口的基本定义 240 4.7.2 接口的实际应用——标准 245 4.7.3 接口的应用——工厂设计模式(Factory) 247 4.7.4 接口的应用——代理设计模式(Proxy) 250 4.7.5 抽象类与接口的区别 252 4.8 Object类 254 4.8.1 Object类的基本定义 254 4.8.2 取得对象信息:toString() 255 4.8.3 对象比较:equals() 256 4.8.4 Object类与引用数据类型 257 4.8.5 修改链表 259 4.9 综合练习:宠物商店 264 4.10 匿名内部类 269 4.11 基本数据类型的包装类 270 4.11.1 装箱与拆箱操作 271 4.11.2 数据类型转换 274 本章小结 277 课后习题 278 第5章 包及访问控制权限 282 5.1 包的定义 282 5.2 包的导入 283 5.3 系统常见包 287 5.4 jar命令 288 5.5 访问控制权限 289 5.6 命名规范 291 5.7 单例设计模式(Singleton) 291 5.8 多例设计模式 295 本章小结 297 课后习题 297 第6章 异常的捕获及处理 298 6.1 认识异常 299 6.2 处理异常 300 6.3 异常的处理流程 304 6.4 throws关键字 308 6.5 throw关键字 309 6.6 异常处理的标准格式 310 6.7 RuntimeException类 312 6.8 assert关键字 313 6.9 自定义异常 314 本章小结 315 课后习题 315 第7章 Eclipse开发工具 317 7.1 Eclipse简介 317 7.2 JDT的使用 319 7.3 JUnit的使用 329 本章小结 331 第8章 Java新特性 332 8.1 可变参数 333 8.2 foreach循环 335 8.3 静态导入 335 8.4 泛型 337 8.4.1 泛型的引出 337 8.4.2 通配符 342 8.4.3 泛型接口 346 8.4.4 泛型方法 347 8.5 枚举 348 8.5.1 认识枚举 348 8.5.2 定义其他结构 351 8.5.3 枚举的实际作用 354 8.6 Annotation 356 8.6.1 准确的覆写:@Override 357 8.6.2 声明过期操作:@Deprecated 358 8.6.3 压制警告:@Suppress Warnings 359 8.7 接口定义加强 359 8.8 Lambda表达式 361 8.9 方法引用 365 8.10 内建函数式接口 368 本章小结 370 课后习题 371 第三部分 Java高 级编程 372 第9章 多线程 373 9.1 线程与进程 373 9.2 多线程实现 374 9.2.1 继承Thread类 374 9.2.2 实现Runnable接口 377 9.2.3 多线程两种实现方式的区别 378 9.2.4 利用Callable接口实现多线程 382 9.2.5 线程的操作状态 384 9.3 多线程常用操作方法 385 9.3.1 线程的命名与取得 385 9.3.2 线程的休眠 387 9.3.3 线程优先级 388 9.4 线程的同步与死锁 390 9.4.1 同步问题的引出 390 9.4.2 同步操作 392 9.4.3 死锁 395 9.5 线程间的经典操作案例——生产者与消费者案例 397 9.5.1 问题的引出 397 9.5.2 解决数据错乱问题 399 9.5.3 解决数据重复问题 401 9.6 线程的生命周期 403 本章小结 405 课后习题 405 第10章 Java常用类库 407 10.1 StringBuffer类 407 10.2 Runtime类 412 10.3 System类 416 10.4 对象克隆 419 10.5 数字操作类 420 10.5.1 Math类 420 10.5.2 Random类 421 10.5.3 大数字操作类 423 10.6 日期处理类 425 10.6.1 Date类 426 10.6.2 日期格式化:SimpleDateFormat 427 10.6.3 Calendar类 429 10.7 比较器 430 10.7.1 Arrays类 430 10.7.2 比较器:Comparable 432 10.7.3 数据结构——BinaryTree 434 10.7.4 挽救的比较器:Comparator 437 10.8 正则表达式 440 10.8.1 问题引出 440 10.8.2 正则标记 442 10.8.3 String类对正则的支持 443 10.8.4 java.util.regex包支持 447 10.9 反射机制 449 10.9.1 认识反射 449 10.9.2 Class类对象实例化 450 10.9.3 反射实例化对象 451 10.9.4 使用反射调用构造 454 10.9.5 反射调用方法 457 10.9.6 反射调用成员 459 10.10 国际化 461 10.10.1 使用Locale类定义语言环境 462 10.10.2 利用ResourceBundle读取资源文件 463 10.10.3 多资源读取 465 本章小结 466 课后习题 467 第11章 Java IO编程 469 11.1 文件操作类:File 469 11.2 字节流与字符流 474 11.2.1 字节输出流:OutputStream 475 11.2.2 字节输入流:InputStream 479 11.2.3 字符输出流:Writer 484 11.2.4 字符输入流:Reader 486 11.2.5 字节流与字符流的区别 488 11.3 转换流 489 11.4 案例:文件复制 491 11.5 字符编码 493 11.6 内存流 495 11.7 打印流 498 11.7.1 打印流设计思想 499 11.7.2 打印流 501 11.7.3 PrintStream类的改进 502 11.8 System类对IO的支持 503 11.8.1 错误输出:System.err 504 11.8.2 信息输出:System.out 505 11.8.3 系统输入:System.in 506 11.9 字符缓冲流:BufferedReader 508 11.10 扫描流:Scanner 511 11.11 对象序列化 514 11.11.1 序列化接口:Serializable 515 11.11.2 实现序列化与反序列化 515 11.11.3 transient关键字 517 本章小结 518 课后习题 519 第12章 Java网络编程 521 12.1 网络编程 521 12.2 开发第一个网络程序 522 12.3 网络开发的经典模型——Echo程序 524 本章小结 527 课后习题 528 第13章 Java类集框架 529 13.1 类集框架简介 529 13.2 单对象保存父接口:Collection 530 13.3 List子接口 531 13.3.1 新的子类:ArrayList 532 13.3.2 旧的子类:Vector 535 13.4 Set子接口 536 13.4.1 关于数据排序的说明 537 13.4.2 关于重复元素的说明 539 13.5 集合输出 541 13.5.1 迭代输出:Iterator 541 13.5.2 双向迭代:ListIterator 544 13.5.3 foreach输出 545 13.5.4 Enumeration输出 546 13.6 偶对象保存:Map接口 547 13.6.1 利用Iterator输出Map集合 550 13.6.2 自定义Map集合的key类型 551 13.7 Stack子类 553 13.8 Properties子类 554 13.9 Collections工具类 556 13.10 数据流 557 13.10.1 数据流基础操作 557 13.10.2 MapReduce 564 本章小结 567 课后习题 568 第14章 Java数据库编程 569 14.1 JDBC简介 569 14.2 连接Oracle数据库 570 14.3 Statement接口 572 14.3.1 数据更新操作 573 14.3.2 数据查询 576 14.4 PreparedStatement接口 578 14.4.1 Statement接口问题 578 14.4.2 PreparedStatement操作 579 14.5 批处理与事务处理 585 本章小结 587 课后习题 587 第四部分 设计开发 589 第15章 DAO设计模式 590 15.1 程序设计分层 590 15.2 实例分析 592 15.3 项目准备 593 15.3.1 数据库连接类 594 15.3.2 开发Value Object 596 15.4 开发数据层 598 15.4.1 开发数据层操作标准 598 15.4.2 数据层实现类 601 15.4.3 定义数据层工厂类——DAOFactory 605 15.5 开发业务层 606 15.5.1 开发业务层标准——IEmpService 606 15.5.2 业务层实现类 609 15.5.3 定义业务层工厂类——ServiceFactory 612 15.6 代码测试 613 15.6.1 调用测试 613 15.6.2 利用JUnit进行测试 614 本章小结 617 附录 综合测试 618 测试试卷一 618 测试试卷二 623 测试试卷三 631

img
java范例开发大全

第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java程序 7 第2章 Java基础类型与运算符(教学视频:39分钟) 9 2.1 基础类型 9 实例2 自动提升 9 实例3 自动转换 10 实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 实例14 判断输入的年份是否为闰年 26 实例15 抽奖活动 27 3.2 for语句 28 实例16 小九九乘法表 28 实例17 如何列出素数 29 实例18 Java中的递归 31 实例19 男生女生各多少人 32 实例20 求水仙花数 34 实例21 求任意一个正数的阶乘 35 实例22 求n的n次方 35 实例23 利用for循环输出几何图形 36 实例24 杨辉三角 38 3.3 while语句 39 实例25 求1到100之间的和 39 实例26 存上100元需要多少天 40 实例27 输出100之间的所有偶数 41 实例28 如何判断回文数字 42 3.4 do…while语句 43 实例29 输出100之间的所有奇数 44 实例30 求最大的随机数 44 3.5 switch语句 45 实例31 判断字母分类 46 实例32 优良及差 47 实例33 打印任意一年日历 48 实例34 一年四季的划分 51 第2篇 Java数据处理 第4章 异常处理(教学视频:62分钟) 54 4.1 编译时异常 54 实例35 除0发生的算术异常(ArithmeticException) 54 实例36 数组下标越界异常(ArrayIndexOutOfBoundsException) 55 实例37 数组元素类型不匹配异常(ArrayStoreException) 56 实例38 强制类型转换异常(ClassCastException) 56 实例39 索引越界异常(IndexOutOfBoundsException) 57 实例40 空指针异常(NullPointerException) 58 实例41 数字格式转换异常(NumberFornatException) 59 实例42 字符串索引越界异常(StringIndexOutBounds) 60 实例43 操作错误(UnsupportedOperationException) 60 4.2 运行时异常 61 实例44 找不到指定类时发生的异常(ClassNotFoundException) 62 实例45 请求的方法不存在(NoSuchMethodException) 63 4.3 try…catch捕获异常 65 实例46 try…catch捕获异常的实例 66 实例47 try…catch…finally捕获异常的实例 67 实例48 try…catch嵌套捕获异常的实例 68 4.4 throws声明异常 69 实例49 throws声明异常实例一 69 实例50 throws声明异常实例二 70 4.5 throw抛出异常 72 实例51 throw抛出异常实例一 72 实例52 throw抛出异常实例二 73 4.6 自定义异常 74 实例53 自定义异常实例一 74 实例54 自定义异常实例二 75 第5章 数组(教学视频:98分钟) 78 5.1 一维数组 78 实例55 一维数组的创建与使用 78 实例56 按相反的顺序输出 79 实例57 奇偶分组 80 实例58 找宝 81 实例59 寻找最小数 82 实例60 我的位置在哪里 83 实例61 复制数组 85 实例62 插入新元素 86 实例63 数组的合并 87 实例64 去除重复元素 88 实例65 数组求和计算 90 实例66 求最大值、最小值和平均值 91 5.2 二维数组 92 实例67 二维数组的创建与使用 92 实例68 矩阵转置 93 实例69 奇数阶幻方 94 实例70 求方阵对角线之和 96 实例71 矩阵的加法 97 实例72 矩阵的减法 98 实例73 快递报价单 99 5.3 数组的排序 101 实例74 冒泡排序法 102 实例75 数组递增排序 103 实例76 部分数组递增排序 103 实例77 选择排序法 104 实例78 快速排序法 106 第6章 字符串(教学视频:138分钟) 108 6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找指定字符最后出现的位置 115 实例87 我究竟有多长 116 实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 原始数组类型的String形式 121 实例95 Java合法标识符 122 实例96 显示一周各星期的名称 123 实例97 构造空心方框 124 实例98 这一天是星期几 125 实例99 大小写互换 127 实例100 输出指定范围的素数 128 实例101 我出现了几次 129 实例102 算术表达式求值器 129 实例103 字符串对齐调整器 137 实例104 字符串的加密 139 实例105 使用正则表达式验证电话号码的格式 141 6.2 字符串缓存类StringBuffer 143 实例106 创建字符串缓存类 143 实例107 提取单个字符 144 实例108 给指定字符赋值 145 实例109 插入新的字符 146 实例110 插入新的字符串 146 实例111 获取字符串的子串 147 实例112 删除指定的字符 148 实例113 倒置字符串 149 实例114 去除重复字符 149 实例115 检查是否是回文 151 第7章 输入/输出流(教学视频:116分钟) 152 7.1 文件和目录 152 实例116 显示文件的基本信息 152 实例117 显示目录的基本信息 153 实例118 在指定的目录下创建单个文件 156 实例119 在指定的目录下创建多个临时文件 158 实例120 删除指定目录下的文件 160 实例121 移动指定目录下的文件 163 实例122 文件搜索引挚 167 7.2 字节流 169 实例123 复制指定目录下的文件 170 实例124 显示文件中的内容 173 实例125 将数据保存到指定的文件中 175 实例126 将由键盘中录入的信息保存到文件中 176 实例127 一个文件变成多个小文件 178 实例128 多个小文件合成一个文件 181 实例129 统计指定文件中的字符个数 183 实例130 对象的序列化与反序列化 185 实例131 同时显示多个文件 187 实例132 生成zip压缩文件 189 实例133 解压缩zip文件 192 实例134 生成Excel文件 194 实例135 读取Excel文件中的内容 198 实例136 生成PDF文件 199 实例137 读取PDF文件中的内容 203 实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示文件中指定的字符 214 实例144 读取jar包文件 215 实例145 文件的加密/解密操作 217 实例146 复制图片 219 实例147 随机读写Java类文件 221 第3篇 Java面向对象编程 第8章 面向对象(教学视频:72分钟) 226 8.1 类 226 实例148 简单的通讯录类 226 实例149 简单的长度单位转换类 227 实例150 卡车和卡车司机之间的关系 229 实例151 双色球 231 8.2 成员变量和方法 236 实例152 使用类作为成员变量 236 实例153 构造方法 237 实例154 使用静态成员变量计算内存中实例化的对象数目 239 实例155 实现加减乘除的方法 240 8.3 面向对象的设计模式 241 实例156 Singleton单例模式 242 实例157 招聘(简单工厂模式) 243 实例158 同学聚会(工厂方法模式) 244 实例159 图书展(抽象工厂模式) 246 实例160 汽车适配器(Adapter适配器模式) 248 8.4 垃圾回收 250 实例161 垃圾回收的机制 250 第9章 面向对象的四大特征(教学视频:65分钟) 252 9.1 抽象 252 实例162 求自定义几何图形的面积和周长 252 实例163 使用抽象方法实现的支票夹 254 9.2 封装 257 实例164 世界小姐参赛资格 257 实例165 自定义复数类 261 9.3 继承 264 实例166 轿车与本田的关系 264 实例167 继承关系的加载顺序 266 实例168 如何访问同名的方法或变量 268 实例169 super()方法的使用 271 实例170 this方法的使用 274 实例171 一张考试成绩单 275 实例172 银行自动存取一体机 278 9.4 多态 284 实例173 饮食文化 284 实例174 使用构造方法的重载计算课程的GPA值 287 第10章 内部类与接口(教学视频:41分钟) 290 10.1 成员内部类 290 实例175 成员内部类的使用规范 290 实例176 猜谜 292 10.2 方法内部类 294 实例177 局部内部类的使用规范 294 实例178 奖学金的评分标准 295 10.3 匿名内部类 297 实例179 匿名内部类的使用规范 297 实例180 电话与移动电话 299 10.4 静态内部类 300 实例181 静态内部类的使用规范 300 实例182 苹果的来历 302 10.5 接口 303 实例183 求n的幂数与倍数 304 实例184 商品订单 306 实例185 多功能排序 310 第11章 Java常用类(教学视频:66分钟) 315 11.1 数学Math类 315 实例186 求圆周率∏值 315 实例187 求对数值 316 实例188 使用取整函数 317 11.2 Random类的使用 318 实例189 随机数 319 实例190 验证码 322 11.3 Date类和Calendar类 324 实例191 使用Date类获取系统的当前时间 324 实例192 使用DateFormat类获取系统的当前时间 325 实例193 使用GregorianCalendar类获取系统的当前时间 326 实例194 使用SimpleDateFormat类获取系统的当前时间 329 实例195 显示某年某月某一周的信息 330 实例196 显示某年某月的信息 332 实例197 时间的设置与获取 334 实例198 万年历(农历和阳历的互换) 337 11.4 Formatter类的使用 347 实例199 时间格式转换符的使用 347 实例200 数据格式转换符的使用 349 11.5 System类的使用 351 实例201 记录程序执行的时间 351 实例202 程序的退出 352 实例203 获取程序运行环境的信息 353 第4篇 Java高级开发技术 第12章 集合(教学视频:45分钟) 358 12.1 Set 358 实例204 利用HashSet删除学生 358 实例205 不重复的随机数序列 360 实例206 运用映射的相关类(Map) 363 实例207 运用集的相关类(Set) 365 12.2 List 368 实例208 增加所需的元素 368 实例209 Iterator迭代器的使用 370 实例210 谁是幸运儿 371 实例211 自定义Queue队列 373 实例212 List、Set与Array之间的相互转换 375 实例213 二分查找法的实现方法 377 实例214 模拟操作系统的进程调度 379 实例215 利用栈将字符串逆序输出 381 实例216 动态的数组链表 382 实例217 你能猜出鱼是谁的宠物吗? 387 实例218 使用Collections类对List的排序操作 393 实例219 LinkedList的添加删除操作 395 实例220 运用Vector 397 实例221 改变Properties文件中的键值 399 第13章 多线程编程(教学视频:121分钟) 405 13.1 多线程的五种基本状态 405 实例222 启动线程 405 实例223 参赛者的比赛生活(线程休眠唤醒) 407 实例224 资源搜索并下载(线程等待和通报) 410 实例225 模拟淘宝购物买卖双方交易问题 412 实例226 携子之手 与子偕老(join) 415 实例227 线程让步(Yield) 417 实例228 会走动的钟(多线程) 419 实例229 变形金刚中的守护神(守护线程) 424 实例230 查看JVM中所有的线程的活动状况 426 实例231 模仿网络快车下载工具下载文件 428 13.2 多线程的同步与互斥 436 实例232 多线程同步方法的实例 436 实例233 ATM存取一体机(线程同步互斥) 437 实例234 我的钱哪里去了 440 实例235 门锁打不开了(死锁) 444 实例236 门锁终于被打开了(解决死锁) 446 实例237 一个死锁的例子 448 13.3 线程的优先级 451 实例238 排座位(线程优先级) 451 实例239 赛车 454 13.4 定时器 458 实例240 定时器(Timer) 458 实例241 数字定时器 459 13.5 线程连接池 462 实例242 手术任务(线程池) 462 实例243 模拟人工服务台(线程连接池) 466 13.6 线程应用实例 471 实例244 下雪的村庄 472 实例245 小飞侠 474 实例246 飞流直下 477 实例247 多线程断点续传 479 实例248 滚动的珠子 485 实例249 余额查询 489 实例250 滚动的文字 492 实例251 漂浮效果 495 实例252 监视内存的使用情况 499 实例253 璀璨的星空 501 实例254 银行和超市业务的模拟 505 第14章 泛型(教学视频:43分钟) 511 14.1 泛型基础 511 实例255 一个关于泛型的简单例子 511 实例256 带两个类型参数的泛型 513 实例257 有界类型程序示例 514 实例258 通配符使用示例 515 实例259 泛型方法使用示例 516 实例260 泛型接口示例 518 实例261 泛型实现坐标打印 519 14.2 泛型类的继承 521 实例262 继承泛型类示例 521 实例263 继承非泛型类示例 522 实例264 泛型类的类型识别示例 523 实例265 强制类型转换示例 525 14.3 擦拭 526 实例266 无限界的擦拭 526 实例267 有限界的擦拭 527 14.4 集合泛型类 528 实例268 Hashtable的泛型化 528 实例269 多功能画笔 529 第15章 网络编程(教学视频:52分钟) 534 15.1 IP地址 534 实例270 获取计算机名与IP地址 534 实例271 获取网址的IP地址 535 实例272 判断两个网址的主机名是否一样 536 实例273 测试IP的类型 537 实例274 查找主机 538 实例275 主机所支持的协议 539 15.2 URL类的使用 540 实例276 使用URL访问网页 540 实例277 URL的组成部分 541 实例278 通过指定的URL可以获取网页的源代码 542 实例279 一对多通信模式 544 实例280 自制浏览器 549 实例281 扫描TCP端口 551 实例282 TCP协议服务器 552 实例283 TCP协议客户机 553 实例284 Socket连接信息 555 实例285 Echo服务的客户端是如何实现的? 556 实例286 检测本机的服务端口 558 实例287 下载的页面不丢失链接 559 实例288 如何对网页进行重新定向 560 实例289 在Internet上搜索对象 560 实例290 LAN使用代理服务器 562 实例291 BBS论坛服务器端 567 实例292 UDP报文的发送与接收 579 第16章 数据库技术(教学视频:38分钟) 583 实例293 加载JDBC驱动程序 583 实例294 通过JDBC对数据库进行查询 584 实例295 数据库更新 585 实例296 获取数据库的基本信息 586 实例297 获取数据库对SQL支持的信息 589 实例298 处理访问数据库出现的常见异常情况 591 实例299 在Servlet中连接数据库 593 实例300 数据分页显示 595 实例301 批处理 601 实例302 事物处理 604 实例303 调用存储过程 608 实例304 连接ODBC数据库 611 实例305 数据库中图片文件的存取 614 第17章 界面设计--Swing(教学视频:88分钟) 618 17.1 Swing组件介绍及应用 618 实例306 JFrame框架的应用 618 实例307 Border的使用 619 实例308 使用Icon组件显示一张图片 620 实例309 Icon接口的应用 621 实例310 JLabel组件 622 实例311 Icon应用到JLabel中 623 实例312 JButton的使用 624 实例313 在JButton上设置快捷键 625 实例314 设置默认按钮 626 实例315 使用JCheckBox组件 627 实例316 JCheckBox事件处理 629 实例317 JRadioButton的使用 630 实例318 JComboBox的使用 632 实例319 利用ComboModel构造JComboBox 633 实例320 DefaultComboBoxModel的使用 635 实例321 建立有图像的JComboBox 636 实例322 建立可自行输入的JComboBox 637 实例323 JComboBox的事件处理 638 实例324 JTextField组件的使用 640 实例325 使用JTextArea组件 641 17.2 页面布局及事件监听 642 实例326 BorderLayout版面布局 643 实例327 FlowLayout布局管理 644 实例328 应用GridLayout设计版面 645 实例329 如何使用BoxLayout布局管理器 647 实例330 使用ActionEvent监听组件 648 实例331 使用WindowAdapter实现鼠标事件 649 实例332 使用MouseMotionListener监听鼠标 650 实例333 使用KeyListener监听键盘 652 17.3 组件的综合应用 654 实例334 计算器 654 实例335 创建树菜单 657 实例336 在节点中显示详细信息 658 第18章 Applet小应用程序(教学视频:39分钟) 662 实例337 不断变大的文字 662 实例338 灯光扫描的效果 664 实例339 字体逐渐展开的效果 666 实例340 飞舞的气球 668 实例341 逐渐浮现的图片 671 实例342 火焰边框的特效 674 实例343 局部放大效果 677 实例344 水波荡漾的效果 679 实例345 漫天飞花 682 实例346 动感影集 685 实例347 彩虹字 688 实例348 多功能按键 690 第19章 多媒体与图像处理(教学视频:51分钟) 694 19.1 多媒体 694 实例349 测试音频播放器 694 实例350 测试视频播放器 696 实例351 视频反色效果 698 实例352 实现一个录音机 703 实例353 建立一个调色板 707 19.2 图像处理 710 实例354 在计算机内存中创建一个图像 710 实例355 会移动的图像 712 实例356 将图片进行180度旋转 714 实例357 处理图像的明暗度 716 实例358 如何将彩色图转化为灰度图 721 实例359 锐化和模糊图像 724 实例360 显示一个图像的轮廓 727 实例361 如何放大及拉伸图像 730 第20章 JSP开发技术(教学视频:62分钟) 735 20.1 JSP基础 735 实例362 网页版的9×9乘法口诀 735 实例363 Java Servlet小程序 737 实例364 Servlet对表单的处理过程 738 实例365 获取/修改JavaBeans中的内容 741 20.2 JSP程序设计 743 实例366 喜连大三元 743 实例367 运气对对碰 748 实例368 文字样式统计器 752 实例369 图形统计器 754 20.3 垃圾信息投诉站 756 实例370 创建投诉表单 756 实例371 保存投诉的内容 760 实例372 实现投诉站的后台操作 762 实例373 取消投诉内容 764 实例374 站内信 767 20.4 网站在线评估系统 769 实例375 创建评估问卷 769 实例376 实现评估的后台操作 771 实例377 查看评估结果 773 第5篇 Java综合案例 第21章 模拟服务器与客户端之间的通信(教学视频:13分钟) 778 21.1 实例介绍 778 21.2 框架设计 779 21.2.1 项目的总体结构 779 21.2.2 搭建开发环境 779 21.2.3 确定项目工程目录 779 21.3 公用模块设计 780 21.4 客户端程序 780 21.4.1 客户端的工作流程 780 21.4.2 编写客户端的源程序 781 21.4.3 客户端源的程序解读 783 21.5 服务器端程序 785 21.5.1 服务器端的工作流程 785 21.5.2 编写服务器端的源程序 785 21.5.3 服务器端的源程序解读 788 21.6 小结 790 第22章 书店管理系统(教学视频:56分钟) 791 22.1 实例分析 791 22.2 系统设计 792 22.2.1 结构分析 792 22.2.2 搭建环境 792 22.2.3 创建目录 793 22.3 数据库设计 793 22.4 公用模块设计 795 22.4.1 data包中的类 795 22.4.2 util包中的类 798 22.5 用户登录模块 800 22.6 系统主界面 802 22.7 基础维护模块 804 22.7.1 图书维护 804 22.7.2 用户维护 811 22.8 借还管理模块 818 22.8.1 借书 818 22.8.2 还书 821 22.9 查询管理模块 824 22.9.1 图书查询 824 22.9.2 用户查询 826 22.10 系统管理模块 829 22.11 小结 831

img
java范例开发大全(pdf&源码)

第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java程序 7 第2章 Java基础类型与运算符(教学视频:39分钟) 9 2.1 基础类型 9 实例2 自动提升 9 实例3 自动转换 10 实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 18 实例12 各种进制的转换 19 实例13 Java中的进制与移位运算符 22 第3章 条件控制语句(教学视频:75分钟) 26 3.1 if控制语句 26 实例14 判断输入的年份是否为闰年 26 实例15 抽奖活动 27 3.2 for语句 28 实例16 小九九乘法表 28 实例17 如何列出素数 29 实例18 Java中的递归 31 实例19 男生女生各多少人 32 实例20 求水仙花数 34 实例21 求任意一个正数的阶乘 35 实例22 求n的n次方 35 实例23 利用for循环输出几何图形 36 实例24 杨辉三角 38 3.3 while语句 39 实例25 求1到100之间的和 39 实例26 存上100元需要多少天 40 实例27 输出100之间的所有偶数 41 实例28 如何判断回文数字 42 3.4 do…while语句 43 实例29 输出100之间的所有奇数 44 实例30 求最大的随机数 44 3.5 switch语句 45 实例31 判断字母分类 46 实例32 优良及差 47 实例33 打印任意一年日历 48 实例34 一年四季的划分 51 第2篇 Java数据处理 第4章 异常处理(教学视频:62分钟) 54 4.1 编译时异常 54 实例35 除0发生的算术异常(ArithmeticException) 54 实例36 数组下标越界异常(ArrayIndexOutOfBoundsException) 55 实例37 数组元素类型不匹配异常(ArrayStoreException) 56 实例38 强制类型转换异常(ClassCastException) 56 实例39 索引越界异常(IndexOutOfBoundsException) 57 实例40 空指针异常(NullPointerException) 58 实例41 数字格式转换异常(NumberFornatException) 59 实例42 字符串索引越界异常(StringIndexOutBounds) 60 实例43 操作错误(UnsupportedOperationException) 60 4.2 运行时异常 61 实例44 找不到指定类时发生的异常(ClassNotFoundException) 62 实例45 请求的方法不存在(NoSuchMethodException) 63 4.3 try…catch捕获异常 65 实例46 try…catch捕获异常的实例 66 实例47 try…catch…finally捕获异常的实例 67 实例48 try…catch嵌套捕获异常的实例 68 4.4 throws声明异常 69 实例49 throws声明异常实例一 69 实例50 throws声明异常实例二 70 4.5 throw抛出异常 72 实例51 throw抛出异常实例一 72 实例52 throw抛出异常实例二 73 4.6 自定义异常 74 实例53 自定义异常实例一 74 实例54 自定义异常实例二 75 第5章 数组(教学视频:98分钟) 78 5.1 一维数组 78 实例55 一维数组的创建与使用 78 实例56 按相反的顺序输出 79 实例57 奇偶分组 80 实例58 找宝 81 实例59 寻找最小数 82 实例60 我的位置在哪里 83 实例61 复制数组 85 实例62 插入新元素 86 实例63 数组的合并 87 实例64 去除重复元素 88 实例65 数组求和计算 90 实例66 求最大值、最小值和平均值 91 5.2 二维数组 92 实例67 二维数组的创建与使用 92 实例68 矩阵转置 93 实例69 奇数阶幻方 94 实例70 求方阵对角线之和 96 实例71 矩阵的加法 97 实例72 矩阵的减法 98 实例73 快递报价单 99 5.3 数组的排序 101 实例74 冒泡排序法 102 实例75 数组递增排序 103 实例76 部分数组递增排序 103 实例77 选择排序法 104 实例78 快速排序法 106 第6章 字符串(教学视频:138分钟) 108 6.1 字符串类String 108 实例79 创建字符串类 108 实例80 如何使用charAt()方法计算重复字符 109 实例81 按字母顺序比较大小 110 实例82 首尾相连 111 实例83 字符串间的比较 112 实例84 字符集的解码方法 113 实例85 寻找指定字符第一次出现的位置 114 实例86 寻找指定字符最后出现的位置 115 实例87 我究竟有多长 116 实例88 替换指定的字符 117 实例89 分割字符串 117 实例90 如何使用substring()方法截取子串 118 实例91 分解字符串 119 实例92 字母大小写转换 120 实例93 去除多余的空白 120 实例94 原始数组类型的String形式 121 实例95 Java合法标识符 122 实例96 显示一周各星期的名称 123 实例97 构造空心方框 124 实例98 这一天是星期几 125 实例99 大小写互换 127 实例100 输出指定范围的素数 128 实例101 我出现了几次 129 实例102 算术表达式求值器 129 实例103 字符串对齐调整器 137 实例104 字符串的加密 139 实例105 使用正则表达式验证电话号码的格式 141 6.2 字符串缓存类StringBuffer 143 实例106 创建字符串缓存类 143 实例107 提取单个字符 144 实例108 给指定字符赋值 145 实例109 插入新的字符 146 实例110 插入新的字符串 146 实例111 获取字符串的子串 147 实例112 删除指定的字符 148 实例113 倒置字符串 149 实例114 去除重复字符 149 实例115 检查是否是回文 151 第7章 输入/输出流(教学视频:116分钟) 152 7.1 文件和目录 152 实例116 显示文件的基本信息 152 实例117 显示目录的基本信息 153 实例118 在指定的目录下创建单个文件 156 实例119 在指定的目录下创建多个临时文件 158 实例120 删除指定目录下的文件 160 实例121 移动指定目录下的文件 163 实例122 文件搜索引挚 167 7.2 字节流 169 实例123 复制指定目录下的文件 170 实例124 显示文件中的内容 173 实例125 将数据保存到指定的文件中 175 实例126 将由键盘中录入的信息保存到文件中 176 实例127 一个文件变成多个小文件 178 实例128 多个小文件合成一个文件 181 实例129 统计指定文件中的字符个数 183 实例130 对象的序列化与反序列化 185 实例131 同时显示多个文件 187 实例132 生成zip压缩文件 189 实例133 解压缩zip文件 192 实例134 生成Excel文件 194 实例135 读取Excel文件中的内容 198 实例136 生成PDF文件 199 实例137 读取PDF文件中的内容 203 实例138 用iText生成Word文件 205 实例139 利用POI读取Word文件中的内容 208 7.3 字符流 209 实例140 按顺序创建文件 210 实例141 按顺序读取文件 211 实例142 追加文件内容 211 实例143 只显示文件中指定的字符 214 实例144 读取jar包文件 215 实例145 文件的加密/解密操作 217 实例146 复制图片 219 实例147 随机读写Java类文件 221 第3篇 Java面向对象编程 第8章 面向对象(教学视频:72分钟) 226 8.1 类 226 实例148 简单的通讯录类 226 实例149 简单的长度单位转换类 227 实例150 卡车和卡车司机之间的关系 229 实例151 双色球 231 8.2 成员变量和方法 236 实例152 使用类作为成员变量 236 实例153 构造方法 237 实例154 使用静态成员变量计算内存中实例化的对象数目 239 实例155 实现加减乘除的方法 240 8.3 面向对象的设计模式 241 实例156 Singleton单例模式 242 实例157 招聘(简单工厂模式) 243 实例158 同学聚会(工厂方法模式) 244 实例159 图书展(抽象工厂模式) 246 实例160 汽车适配器(Adapter适配器模式) 248 8.4 垃圾回收 250 实例161 垃圾回收的机制 250 第9章 面向对象的四大特征(教学视频:65分钟) 252 9.1 抽象 252 实例162 求自定义几何图形的面积和周长 252 实例163 使用抽象方法实现的支票夹 254 9.2 封装 257 实例164 世界小姐参赛资格 257 实例165 自定义复数类 261 9.3 继承 264 实例166 轿车与本田的关系 264 实例167 继承关系的加载顺序 266 实例168 如何访问同名的方法或变量 268 实例169 super()方法的使用 271 实例170 this方法的使用 274 实例171 一张考试成绩单 275 实例172 银行自动存取一体机 278 9.4 多态 284 实例173 饮食文化 284 实例174 使用构造方法的重载计算课程的GPA值 287 第10章 内部类与接口(教学视频:41分钟) 290 10.1 成员内部类 290 实例175 成员内部类的使用规范 290 实例176 猜谜 292 10.2 方法内部类 294 实例177 局部内部类的使用规范 294 实例178 奖学金的评分标准 295 10.3 匿名内部类 297 实例179 匿名内部类的使用规范 297 实例180 电话与移动电话 299 10.4 静态内部类 300 实例181 静态内部类的使用规范 300 实例182 苹果的来历 302 10.5 接口 303 实例183 求n的幂数与倍数 304 实例184 商品订单 306 实例185 多功能排序 310 第11章 Java常用类(教学视频:66分钟) 315 11.1 数学Math类 315 实例186 求圆周率∏值 315 实例187 求对数值 316 实例188 使用取整函数 317 11.2 Random类的使用 318 实例189 随机数 319 实例190 验证码 322 11.3 Date类和Calendar类 324 实例191 使用Date类获取系统的当前时间 324 实例192 使用DateFormat类获取系统的当前时间 325 实例193 使用GregorianCalendar类获取系统的当前时间 326 实例194 使用SimpleDateFormat类获取系统的当前时间 329 实例195 显示某年某月某一周的信息 330 实例196 显示某年某月的信息 332 实例197 时间的设置与获取 334 实例198 万年历(农历和阳历的互换) 337 11.4 Formatter类的使用 347 实例199 时间格式转换符的使用 347 实例200 数据格式转换符的使用 349 11.5 System类的使用 351 实例201 记录程序执行的时间 351 实例202 程序的退出 352 实例203 获取程序运行环境的信息 353 第4篇 Java高级开发技术 第12章 集合(教学视频:45分钟) 358 12.1 Set 358 实例204 利用HashSet删除学生 358 实例205 不重复的随机数序列 360 实例206 运用映射的相关类(Map) 363 实例207 运用集的相关类(Set) 365 12.2 List 368 实例208 增加所需的元素 368 实例209 Iterator迭代器的使用 370 实例210 谁是幸运儿 371 实例211 自定义Queue队列 373 实例212 List、Set与Array之间的相互转换 375 实例213 二分查找法的实现方法 377 实例214 模拟操作系统的进程调度 379 实例215 利用栈将字符串逆序输出 381 实例216 动态的数组链表 382 实例217 你能猜出鱼是谁的宠物吗? 387 实例218 使用Collections类对List的排序操作 393 实例219 LinkedList的添加删除操作 395 实例220 运用Vector 397 实例221 改变Properties文件中的键值 399 第13章 多线程编程(教学视频:121分钟) 405 13.1 多线程的五种基本状态 405 实例222 启动线程 405 实例223 参赛者的比赛生活(线程休眠唤醒) 407 实例224 资源搜索并下载(线程等待和通报) 410 实例225 模拟淘宝购物买卖双方交易问题 412 实例226 携子之手 与子偕老(join) 415 实例227 线程让步(Yield) 417 实例228 会走动的钟(多线程) 419 实例229 变形金刚中的守护神(守护线程) 424 实例230 查看JVM中所有的线程的活动状况 426 实例231 模仿网络快车下载工具下载文件 428 13.2 多线程的同步与互斥 436 实例232 多线程同步方法的实例 436 实例233 ATM存取一体机(线程同步互斥) 437 实例234 我的钱哪里去了 440 实例235 门锁打不开了(死锁) 444 实例236 门锁终于被打开了(解决死锁) 446 实例237 一个死锁的例子 448 13.3 线程的优先级 451 实例238 排座位(线程优先级) 451 实例239 赛车 454 13.4 定时器 458 实例240 定时器(Timer) 458 实例241 数字定时器 459 13.5 线程连接池 462 实例242 手术任务(线程池) 462 实例243 模拟人工服务台(线程连接池) 466 13.6 线程应用实例 471 实例244 下雪的村庄 472 实例245 小飞侠 474 实例246 飞流直下 477 实例247 多线程断点续传 479 实例248 滚动的珠子 485 实例249 余额查询 489 实例250 滚动的文字 492 实例251 漂浮效果 495 实例252 监视内存的使用情况 499 实例253 璀璨的星空 501 实例254 银行和超市业务的模拟 505 第14章 泛型(教学视频:43分钟) 511 14.1 泛型基础 511 实例255 一个关于泛型的简单例子 511 实例256 带两个类型参数的泛型 513 实例257 有界类型程序示例 514 实例258 通配符使用示例 515 实例259 泛型方法使用示例 516 实例260 泛型接口示例 518 实例261 泛型实现坐标打印 519 14.2 泛型类的继承 521 实例262 继承泛型类示例 521 实例263 继承非泛型类示例 522 实例264 泛型类的类型识别示例 523 实例265 强制类型转换示例 525 14.3 擦拭 526 实例266 无限界的擦拭 526 实例267 有限界的擦拭 527 14.4 集合泛型类 528 实例268 Hashtable的泛型化 528 实例269 多功能画笔 529 第15章 网络编程(教学视频:52分钟) 534 15.1 IP地址 534 实例270 获取计算机名与IP地址 534 实例271 获取网址的IP地址 535 实例272 判断两个网址的主机名是否一样 536 实例273 测试IP的类型 537 实例274 查找主机 538 实例275 主机所支持的协议 539 15.2 URL类的使用 540 实例276 使用URL访问网页 540 实例277 URL的组成部分 541 实例278 通过指定的URL可以获取网页的源代码 542 实例279 一对多通信模式 544 实例280 自制浏览器 549 实例281 扫描TCP端口 551 实例282 TCP协议服务器 552 实例283 TCP协议客户机 553 实例284 Socket连接信息 555 实例285 Echo服务的客户端是如何实现的? 556 实例286 检测本机的服务端口 558 实例287 下载的页面不丢失链接 559 实例288 如何对网页进行重新定向 560 实例289 在Internet上搜索对象 560 实例290 LAN使用代理服务器 562 实例291 BBS论坛服务器端 567 实例292 UDP报文的发送与接收 579 第16章 数据库技术(教学视频:38分钟) 583 实例293 加载JDBC驱动程序 583 实例294 通过JDBC对数据库进行查询 584 实例295 数据库更新 585 实例296 获取数据库的基本信息 586 实例297 获取数据库对SQL支持的信息 589 实例298 处理访问数据库出现的常见异常情况 591 实例299 在Servlet中连接数据库 593 实例300 数据分页显示 595 实例301 批处理 601 实例302 事物处理 604 实例303 调用存储过程 608 实例304 连接ODBC数据库 611 实例305 数据库中图片文件的存取 614 第17章 界面设计--Swing(教学视频:88分钟) 618 17.1 Swing组件介绍及应用 618 实例306 JFrame框架的应用 618 实例307 Border的使用 619 实例308 使用Icon组件显示一张图片 620 实例309 Icon接口的应用 621 实例310 JLabel组件 622 实例311 Icon应用到JLabel中 623 实例312 JButton的使用 624 实例313 在JButton上设置快捷键 625 实例314 设置默认按钮 626 实例315 使用JCheckBox组件 627 实例316 JCheckBox事件处理 629 实例317 JRadioButton的使用 630 实例318 JComboBox的使用 632 实例319 利用ComboModel构造JComboBox 633 实例320 DefaultComboBoxModel的使用 635 实例321 建立有图像的JComboBox 636 实例322 建立可自行输入的JComboBox 637 实例323 JComboBox的事件处理 638 实例324 JTextField组件的使用 640 实例325 使用JTextArea组件 641 17.2 页面布局及事件监听 642 实例326 BorderLayout版面布局 643 实例327 FlowLayout布局管理 644 实例328 应用GridLayout设计版面 645 实例329 如何使用BoxLayout布局管理器 647 实例330 使用ActionEvent监听组件 648 实例331 使用WindowAdapter实现鼠标事件 649 实例332 使用MouseMotionListener监听鼠标 650 实例333 使用KeyListener监听键盘 652 17.3 组件的综合应用 654 实例334 计算器 654 实例335 创建树菜单 657 实例336 在节点中显示详细信息 658 第18章 Applet小应用程序(教学视频:39分钟) 662 实例337 不断变大的文字 662 实例338 灯光扫描的效果 664 实例339 字体逐渐展开的效果 666 实例340 飞舞的气球 668 实例341 逐渐浮现的图片 671 实例342 火焰边框的特效 674 实例343 局部放大效果 677 实例344 水波荡漾的效果 679 实例345 漫天飞花 682 实例346 动感影集 685 实例347 彩虹字 688 实例348 多功能按键 690 第19章 多媒体与图像处理(教学视频:51分钟) 694 19.1 多媒体 694 实例349 测试音频播放器 694 实例350 测试视频播放器 696 实例351 视频反色效果 698 实例352 实现一个录音机 703 实例353 建立一个调色板 707 19.2 图像处理 710 实例354 在计算机内存中创建一个图像 710 实例355 会移动的图像 712 实例356 将图片进行180度旋转 714 实例357 处理图像的明暗度 716 实例358 如何将彩色图转化为灰度图 721 实例359 锐化和模糊图像 724 实例360 显示一个图像的轮廓 727 实例361 如何放大及拉伸图像 730 第20章 JSP开发技术(教学视频:62分钟) 735 20.1 JSP基础 735 实例362 网页版的9×9乘法口诀 735 实例363 Java Servlet小程序 737 实例364 Servlet对表单的处理过程 738 实例365 获取/修改JavaBeans中的内容 741 20.2 JSP程序设计 743 实例366 喜连大三元 743 实例367 运气对对碰 748 实例368 文字样式统计器 752 实例369 图形统计器 754 20.3 垃圾信息投诉站 756 实例370 创建投诉表单 756 实例371 保存投诉的内容 760 实例372 实现投诉站的后台操作 762 实例373 取消投诉内容 764 实例374 站内信 767 20.4 网站在线评估系统 769 实例375 创建评估问卷 769 实例376 实现评估的后台操作 771 实例377 查看评估结果 773 第5篇 Java综合案例 第21章 模拟服务器与客户端之间的通信(教学视频:13分钟) 778 21.1 实例介绍 778 21.2 框架设计 779 21.2.1 项目的总体结构 779 21.2.2 搭建开发环境 779 21.2.3 确定项目工程目录 779 21.3 公用模块设计 780 21.4 客户端程序 780 21.4.1 客户端的工作流程 780 21.4.2 编写客户端的源程序 781 21.4.3 客户端源的程序解读 783 21.5 服务器端程序 785 21.5.1 服务器端的工作流程 785 21.5.2 编写服务器端的源程序 785 21.5.3 服务器端的源程序解读 788 21.6 小结 790 第22章 书店管理系统(教学视频:56分钟) 791 22.1 实例分析 791 22.2 系统设计 792 22.2.1 结构分析 792 22.2.2 搭建环境 792 22.2.3 创建目录 793 22.3 数据库设计 793 22.4 公用模块设计 795 22.4.1 data包中的类 795 22.4.2 util包中的类 798 22.5 用户登录模块 800 22.6 系统主界面 802 22.7 基础维护模块 804 22.7.1 图书维护 804 22.7.2 用户维护 811 22.8 借还管理模块 818 22.8.1 借书 818 22.8.2 还书 821 22.9 查询管理模块 824 22.9.1 图书查询 824 22.9.2 用户查询 826 22.10 系统管理模块 829 22.11 小结 831