随笔分类 -  Java基础

摘要:Java 5 添加了泛型,提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 泛型的本质是参数化类型,可以为以前处理通用对象的类和方法,指定具体的对象类型。本文将从泛型集合,泛型类,泛型方法,泛型通配符,泛型擦除及其原因等方面进行举例分析 阅读全文
posted @ 2018-12-10 14:58 czwbig 阅读(1959) 评论(0) 推荐(0)
摘要:本文内容:主要是 Java 8 新增日期时间 API ,也包含 Java 7 未过时的一些方法。本文目的:掌握 Java 中日期和时间常用 API 的使用。 阅读全文
posted @ 2018-12-04 11:07 czwbig 阅读(2831) 评论(0) 推荐(0)
摘要:学完 NIO 和 IO 后,有一个问题:什么时候应该使用 IO,什么时候应该使用 NIO ?本文将尝试阐明 NIO 和 IO 之间的差异,并提供它们的用例,以及它们对程序代码的设计影响。 阅读全文
posted @ 2018-12-03 09:40 czwbig 阅读(1502) 评论(0) 推荐(0)
摘要:在 Java 7 中,AsynchronousFileChannel 已添加到 Java NIO 中,它可以异步读取数据并将数据写入文件 阅读全文
posted @ 2018-12-02 23:06 czwbig 阅读(3933) 评论(0) 推荐(0)
摘要:Path 实例表示文件系统中的路径。 路径可以指向文件或目录,也可以是绝对的或相对的。在许多情况下,可以使用 Path 接口替换 File 类的使用。Files 则为操作文件系统中的文件提供了几种方法,可以实现读写,删除,搜索等操作 阅读全文
posted @ 2018-12-02 23:05 czwbig 阅读(3878) 评论(0) 推荐(0)
摘要:FileChannel 是连接到文件的通道,可以从文件中读取数据,并将数据写入文件,可以替代使用标准 IO 读写文件的操作。SocketChannel 是连接到 TCP 网络套接字的通道,相当于 Java 网络编程的套接字 阅读全文
posted @ 2018-11-30 22:44 czwbig 阅读(1973) 评论(1) 推荐(0)
摘要:一个选择器可对应多个通道,选择器是通过 SelectionKey 这个关键对象完成对多个通道的选择的。注册选择器的时候会返回此对象,调用选择器的 selectedKeys() 方法也会返回此对象。每一个 SelectionKey 都包含了一些必要信息,比如关联的通道和选择器,获取到 SelectionKey 后就可以从中取出对应通道进行操作。 阅读全文
posted @ 2018-11-30 12:10 czwbig 阅读(1140) 评论(1) 推荐(1)
摘要:Java NIO Scatter / Gather ,Channel to Channel 聚集和分散,通道到通道,通道的聚集和分散操作在需要将传输的数据分开处理的场合非常有用,而通道到通道提供了一个复制,或者说传输数据的方式 阅读全文
posted @ 2018-11-29 19:31 czwbig 阅读(1225) 评论(0) 推荐(1)
摘要:掌握了标准 IO 之后继续学习 NIO 知识。主要参考 JavaDoc 和 Jakob Jenkov 的英文教程 [Java NIO Tutorial] 阅读全文
posted @ 2018-11-28 23:01 czwbig 阅读(3245) 评论(0) 推荐(2)
摘要:本文目的是大概了解 Java 网络编程体系,不深入。主要参考 JavaDoc 和 Jakob Jenkov 的英文教程《Java Networking》 阅读全文
posted @ 2018-11-25 23:27 czwbig 阅读(3715) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" Java IO目的和功能 Java IO 包含 InputStream,OutputStream,Reader 和 Writer 类的许多子类。 原因是,所有这些子类都在解决各种不同的目的。 所涉及的目的总结如下: 网络访问 内部缓冲区访问 线程间通 阅读全文
posted @ 2018-11-24 22:33 czwbig 阅读(872) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" BufferedReader BufferedReader 类构造器接收一个 Reader 对象,为 Reader 实例提供缓冲。 缓冲可以加快 IO 的速度。 BufferedReader 不是一次从网络或磁盘读取一个字符,而是一次读取一个更大的块 阅读全文
posted @ 2018-11-24 22:32 czwbig 阅读(994) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" 跟踪行号的缓冲字符输入流 LineNumberReader LineNumberReader 类是一个 BufferedReader ,用于跟踪读取字符的行号。行号从 0 开始。每当 LineNumberReader 在包装的 Reader 返回的字 阅读全文
posted @ 2018-11-24 22:32 czwbig 阅读(415) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" Reader Reader 类是 Java IO API 中所有 Reader 子类的基类。 Reader 类似于 InputStream ,除了它是基于字符而不是基于字节的。 换句话说, Reader 用于读取文本,而 InputStream 用于 阅读全文
posted @ 2018-11-24 22:31 czwbig 阅读(2226) 评论(0) 推荐(3)
摘要:目录: "系统学习 Java IO 目录,概览" PrintStream 类可以将格式化数据写入底层 OutputStream 或者直接写入 File 对象。 PrintStream 类可以格式化基本类型,如int,long等格式化为文本,而不是其字节值。 这就是为什么它被称为 PrintStrea 阅读全文
posted @ 2018-11-24 14:03 czwbig 阅读(1446) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" PushbackInputStream 旨在从 InputStream 解析数据时使用。 有时您需要先读取几个字节以查看将要发生的事情,然后才能确定如何解释当前字节, PushbackInputStream 允许这样做。 实际上,它允许将读取的字节推 阅读全文
posted @ 2018-11-24 14:03 czwbig 阅读(1725) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" 这两个流的作用是:“封装其它的输入流,并为它们提供额外的功能” 他们的直接子类有: BufferedInputStream 的作用就是为“输入流提供缓冲功能,以及 mark() 和 reset() 功能” DataInputStream 是用来装饰其 阅读全文
posted @ 2018-11-24 14:02 czwbig 阅读(689) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" BufferedInputStream BufferedInputStream 类为输入流提供缓冲。 缓冲可以加快IO的速度。 BufferedInputStream 不是一次从网络或磁盘读取一个字节,而是一次将更大的块读入内部缓冲区。 当从 Buf 阅读全文
posted @ 2018-11-24 14:02 czwbig 阅读(888) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" ByteArrayInputStream 如果数据存储在数组中,ByteArrayInputStream 可以很方便读取,它可以返回 InputStream , 这样,ByteArrayInputStream 可以包装字节数组,并将其转换为流。 构造 阅读全文
posted @ 2018-11-24 14:01 czwbig 阅读(1321) 评论(0) 推荐(0)
摘要:目录: "系统学习 Java IO 目录,概览" SequenceInputStream 可以将两个或多个其他 InputStream 合并为一个。 首先,SequenceInputStream 将读取第一个 InputStream 中的所有字节,然后读取第二个 InputStream 中的所有字节 阅读全文
posted @ 2018-11-24 14:00 czwbig 阅读(660) 评论(0) 推荐(0)