摘要: Exploring RandomAccessFile 构造方法: 其中, 参数必须为 ,`"rw" "rws" "rwd"`其中之一。 :以只读方式打开 :读写方式打开 :当文件不存在的时候,会创建它。而且,每次内容的更新都是同步写入存储设备。 :与 类似,会同时将文件元数据写入 文件元数据是文件的 阅读全文
posted @ 2017-01-31 00:41 JintaoXIAO 阅读(191) 评论(0) 推荐(0) 编辑
摘要: Introducing Channels _channel_对象代表了一个开放连接到能够执行IO操作的硬件设备,如文件,网络流,应用组件。_channel_使用_buffer_作为一个传输数据载体。 Channel and Its Children 所有_channel_类都是 接口的实现类。它声明 阅读全文
posted @ 2017-01-31 00:40 JintaoXIAO 阅读(1183) 评论(0) 推荐(0) 编辑
摘要: Stream Classes Overview 输出流的继承类图: 输入流的继承类图: 和`StringBufferInputStream`由于不支持字符编码,已经废弃掉了。 也是不支持字符编码的,但由于大量应用,暂时还没有废弃。 Touring the Stream Classes OutputS 阅读全文
posted @ 2017-01-31 00:39 JintaoXIAO 阅读(429) 评论(0) 推荐(0) 编辑
摘要: Buffers Introducing Buffers _buffer_存储固定数量的数据,它是我们和I/O服务打交道的媒介对象,主要供_channel_读写使用。 具有四个属性: _Capacity_:该buffer能够存储的数据容量 _Limit_:buffer中可供读写的上边界 _Positi 阅读全文
posted @ 2017-01-31 00:36 JintaoXIAO 阅读(191) 评论(0) 推荐(0) 编辑
摘要: Constructing File Instances 当使用相对路径时,默认是相对于JVM的启动的当前用户目录来的,可以通过 的`getProperty("user.dir") File`的实例实际上是对文件或路径的抽象表示(并不保证它代表的路径时存在的)。 由于不同系统的文件系统目录不同,因此, 阅读全文
posted @ 2017-01-31 00:35 JintaoXIAO 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 介绍 策略模式似乎是所有设计模式中最简单的,然而它为你的代码提供了极大的灵活性。这个模式到处都用,而且还会连接其它模式使用。我们学过的其它模式都或多或少的与该模式有关。 要理解策略模式,我们会设计一个文本格式化器用于文本编辑器。我们会创建不同的文本格式化器,供文本编辑器对不同文本做相应的格式化。 什 阅读全文
posted @ 2017-01-31 00:31 JintaoXIAO 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 意图 为子系统中的一组接口提供一个一致的界面,_Facade_模式定义了一个高层接口,这个接口使得这一子系统更加易用。 动机 将一个系统划分成为若干个子系统有利于降低系统的复杂性。一个常见的设计目标是使子系统间的通信和相互依赖关系达到最小。达到该目标的途径之一就是引入一个外观对象,它为子系统中较为一 阅读全文
posted @ 2017-01-31 00:31 JintaoXIAO 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 介绍 在面向对象编程中,对象之间相互交流共同完成工作。但有时候,创建一个重量级对象成本较高(如通过网络,I/O,数据库操作才能完成创建的对象),而你的应用还需要大量的这种对象(它们都包含几乎相似的属性),那么这就隐含着一个性能问题。 让我们考虑这样一个场景:一个应用需要某些访问控制。不同类型的用户具 阅读全文
posted @ 2017-01-31 00:30 JintaoXIAO 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 介绍 一个大型电子公司想请你开发一款软件,用于操作他们最新的全自动洗衣机。该公司提供给你它的硬件规范以及该机器的功能。在规范中,他们提供了不同的洗衣程序。他们想要提供完全自动的不需要人介入的清洗过程。用户只需要将水管与机器连接,放入衣物,指定衣物的类型如棉,丝或纤维等,然后按开始键就好了。 机器应该 阅读全文
posted @ 2017-01-31 00:29 JintaoXIAO 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 介绍 要理解装饰器模式,我们来帮助pizza公司设计一个额外加顶计算器。用户可以要求给pizza加额外的顶料(就是你吃拉面的浇头),然后我们的工作就是将顶料加上,然后计算相应的价格。 什么是装饰器模式 装饰器模式主要用于给对象动态的添加额外的功能。装饰器提供了一个灵活的方式让子类扩展功能,同时该模式 阅读全文
posted @ 2017-01-31 00:27 JintaoXIAO 阅读(176) 评论(0) 推荐(0) 编辑
摘要: Bridge 意图 将抽象部分与它的实现部分分离,使它们可以独立地变化。 动机 当一个抽象可能有多个实现时,通常用继承来协调它们。抽象类定义对该抽象的接口,而具体的子类则用不同方式加以实现。但是此方法有时不够灵活。继承机制将抽象部分 与它的实现部分固定在一起,使得难以对抽象部分和实现部分独立的进行修 阅读全文
posted @ 2017-01-31 00:26 JintaoXIAO 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 与等待/通知(wait/notify)模式类似。 有时候,我们需要某些方法在等待一段时间后,若还不能完成工作,则返回(或返回默认值)。 阅读全文
posted @ 2017-01-31 00:16 JintaoXIAO 阅读(166) 评论(0) 推荐(0) 编辑
摘要: `java.nio.channels.AsynchronousChannel`支持异步io操作。异步io操作通过返回一个_future_对象,或者是通过_completion handler_回调实现。 :调用后快速返回一个 接口的对象,V代表具体操作的返回值。通过调用Future的方法,检查io操 阅读全文
posted @ 2017-01-31 00:15 JintaoXIAO 阅读(598) 评论(0) 推荐(0) 编辑
摘要: 1.change root user 2.install mysql yum repository 3.update or install mysql 3.start mysql server and autostart mysql on boot 5.get your generated rand 阅读全文
posted @ 2017-01-31 00:15 JintaoXIAO 阅读(113) 评论(0) 推荐(0) 编辑
摘要: Calculate the sum of two integers a and b , but you are not allowed to use the operator and . Example: Given a = 1 and b = 2, return 3. 哎,这道题我想到了应该使用位 阅读全文
posted @ 2017-01-31 00:14 JintaoXIAO 阅读(92) 评论(0) 推荐(0) 编辑
摘要: `java.lang.Thread join()`方法部分源码如下: java public final synchronized void join(long millis) throws InterruptedException{ long base = System.currentTimeMi 阅读全文
posted @ 2017-01-31 00:12 JintaoXIAO 阅读(182) 评论(0) 推荐(0) 编辑
摘要: Thread.State A thread state. A thread can be in one of the following states: ​ A thread that has not yet started is in this state. (线程的初始状态,线程对象已被构建,但 阅读全文
posted @ 2017-01-31 00:11 JintaoXIAO 阅读(178) 评论(0) 推荐(0) 编辑
摘要: Wait&Notify 以下内容来自 《Java并发编程的艺术》 ,4.3.2 等待/通知机制 线程A等待某一个变量_v_满足某个条件,而线程B会在某个不确定的时刻修改_v_,以使其满足条件,那么线程A所要做的无非以下两种操作: 轮询变量_v_,直到_v_满足条件,A继续完成它的工作 每隔一段时间检 阅读全文
posted @ 2017-01-31 00:09 JintaoXIAO 阅读(362) 评论(0) 推荐(0) 编辑