Java编程思想——标准 I / O】的更多相关文章

将Syetem.out转换成PrintWriter 标准I/O重定向: 控制台信息量大,滚动快,查看困难 setIn(InputStream) setOut(...) setErr(...) 新I/O库,提高速度: 方式:使用的结构更接近操作系统执行I/O的方式:通道和缓冲器. 通道:包含数据的矿藏:缓冲器:运送数据的车: 屏蔽底层信息,封装耗时,适用于大型文件操作. 唯一与通道交互缓冲器:ByteBuffer; FileInputStream\FileOutStream\RandomAcces…
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第十一章 持有对象 11.1 泛型和类型安全的容器>eg: List<String> 容器中可以插入该泛型类子类都可以放置进去11.2 基本概念 (1)Collection. 一个独立元素的序列,这些元素都服从一条或多条规则.List 必须按照插入的顺序保存元素,而Set不能有重复元素 Queue按照排队规则来确定对象产生的顺序 (2)Map. 一组成对的"键值对&…
Java编程思想(后) 持有对象 如果一个程序只包含固定数量的且其生命期都是已知的对象,那么这是一个非常简单的程序. Java中的库基本类型: List, Set, Queue和Map --- 称为集合类. ArrayList用add()插入对象, 用get()访问这些对象. 如果一个类没有显式地声明继承那个类, 那么它自动继承自Object. Java 泛型穿件类会非常复杂, 预定义的泛型会很简单. 通过泛型, 可以在编译器防止将错误类型的对象置到容器中. 泛型对应的是编译器错误, 而不是运行…
Java编程思想 有C++编程基础的条件下, 前10章可以快速过一下,都是基本语法,不需要花太多时间. 着重中后段的一些章节,类型信息.泛型.容器.IO.并发等. 中文翻译版 阅读地址 对于一个架构师而言,掌握各种语言的优势并可以运用到系统中,由此简化系统的开发,是其架构生涯的第一步. 每一个程序员都不能固步自封,要多接触新的行业,新的技术领域,突破自我. 对象入门 类的继承一般使用'统一标记法'(UML图)来画继承的图. 在面向对象的程序中, 通常要用到上溯造型(向上转型)的技术, 需要动态绑…
Bruce Eckel 是<Java 编程思想>.<C++编程思想>的作者,同时也是 MindView 公司的总裁,该公司向客户提供软件咨询和培训.他是 C++ 标准委员会拥有表决权的成员之一,拥有应用物理学学士和计算机工程硕士学位.从 1984 年至今,他已经发表了超过 150 篇计算机技术文章,出版了 6 本书.他的<C++编程思想>一本书在 1995 年被评为"最佳软件开发图书",<Java 编程思想>被评为 1999 年 Java…
<Java编程思想第四版完整中文高清版.pdf>-笔记 附录 B 对比 C++和 Java “作为一名 C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且 Java 的语法无疑是非常熟悉的.事实上,Java 本来就是从 C++衍生出来的.” 然而,C++和Java 之间仍存在一些显著的差异.可以这样说,这些差异代表着技术的极大进步.一旦我们弄清楚了这些差异,就会理解为什么说Java 是一种优秀的程序设计语言.本附录将引导大家认识用于区分 Java 和C++的一些重要特征. (1) 最…
接上篇JAVA编程思想读书笔记(三)--RTTI No1: 类的克隆 public class MyObject implements Cloneable { int i; public MyObject(int i) { this.i = i; } @Override protected Object clone() { Object o = null; try { o = super.clone(); } catch (CloneNotSupportedException e) { Syst…
前段时间在豆瓣上无意间看到一个帖子"我为什么把thinking in java 读了10遍",是11年的帖子,下面评论至今,各种声音都有,不过大多数还是佩服和支持的.我个人来讲也是非常支持的,而且也打算再读<Thinking in Java>,上学那会老师再三强调:"读书百遍,其义自见!",但是对于程序猿,不光要读,而且要实践. 一.为什么要再读 上一篇,我曾经说过,如何在Java界立足,凭借的就两点: 1.基本功,包括:Java基本知识,(Java编程…
24.JAVA编程思想--违例差错控制 Java 的基本原理就是"形式错误的代码不会执行". 与C++类似,捕获错误最理想的是在编译期间,最好在试图执行程序曾经.然而.并不是全部错误都能在编译期间侦測到.有些问题必须在执行期间解决.让错误的缔结者通过一些手续向接收者传递一些适当的信息,使其知道该怎样正确地处理遇到的问题. 在C++和其它早期语言中,可通过几种手续来达到这个目的.并且它们一般是作为一种规定建立起来的,而非作为程序设计语言的一部分.典型地,我们须要返回一个值或设置一个标志(…
33.JAVA编程思想--JAVA IO File类 RandomAccessFile用于包括了已知长度记录的文件.以便我们能用 seek()从一条记录移至还有一条:然后读取或改动那些记录. 各记录的长度并不一定同样:仅仅要知道它们有多大以及置于文件何处就可以. 首先.我们有点难以相信RandomAccessFile 不属于InputStream 或者OutputStream 分层结构的一部分.除了恰巧实现了DataInput 以及DataOutput(这两者亦由 DataInputStream…
七.队列 排队,先进先出. 除并发应用外Queue只有两个实现:LinkedList,PriorityQueue.他们的差异在于排序而非性能. 一些常用方法: 继承自Collection的方法: add 在尾部增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常 remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常 element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementExc…
六.队列 排队,先进先出.除并发应用外Queue只有两个实现:LinkedList,PriorityQueue.他们的差异在于排序而非性能. 一些常用方法: 继承自Collection的方法: add 在尾部增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常 remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementException异常 element 返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementExce…
需要源码.JDK1.6 .编码风格参考阿里java规约 7/12开始 有点意识到自己喜欢理论大而泛的模糊知识的学习,而不喜欢实践和细节的打磨,是因为粗心浮躁导致的么? cron表达式使用 设计能力.领域建模能力 其他: 海明威的硬币:老人与海 工具准备: java编程思想电子版 别人整理的思维导图 前言 适用范围:Java SE5/6 版本. Java的设计目标是:为程序员减少复杂性,缩短代码的开发时间,跨平台复用. 学习方法:一模式或一节点就进入一练习,思维与实践并行,现学现卖. 每当我认为我…
三年之前就买了<Java编程思想>这本书,但是到现在为止都还没有好好看过这本书,这次希望能够坚持通读完整本书并整理好自己的读书笔记,上一篇文章是记录的第一章到第十章的内容,这一次记录的是第十一章到第十六章的内容,写<Java编程思想>读书笔记一的时间还是2022-01-26,没注意又拖这么久了,本文还是会把自己感兴趣的知识点记录一下,相关实例代码:https://gitee.com/reminis_com/thinking-in-java 第十一章:持有对象 如果一个程序只包含固定…
前言:三年之前就买了<Java编程思想>这本书,但是到现在为止都还没有好好看过这本书,这次希望能够坚持通读完整本书并整理好自己的读书笔记,上一篇文章是记录的第十一章到第十六章的内容,这一次记录的是第十七章到第十八章的内容,主要是集合和I/O内容太多,限于篇幅本文先记录两章内容,本文还是会把自己感兴趣的知识点记录一下,相关示例代码放在码云上了,码云地址:https://gitee.com/reminis_com/thinking-in-java 第十七章:容器深入研究 完整的容器分类法:这张图是…
前言:本文是<Java编程思想>读书笔记系列的最后一章,本章的内容很多,需要细读慢慢去理解,文中的示例最好在自己电脑上多运行几次,相关示例完整代码放在码云上了,码云地址:https://gitee.com/reminis_com/thinking-in-java 第二十一章:并发 基本的线程机制   并发编程使我们可以将程序划分为多个分离的.独立运行的任务.通过使用多线程机制,这些独立任务(也被称为子任务)中的每一个都将由执行线程来驱动.一个线程就是在进程中的一个单一的顺序控制流,因此,单个进…
switch语句和if-else语句不同,switch语句可以有多个可能的执行路径.在第四版java编程思想介绍switch语句的语法格式时写到: switch (integral-selector) { case integral-value1: statement; break; case integral-value12: statement; break; default: statement; } 其中integral-selector(整数选择因子)是一个能产生整数值的表达式.并且说…
<Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfInitialization.java // Demonstrates initialization order. // When the constructor is called, to create a // Tag object, you'll see a message: class Tag { Tag(in…
Java编程思想笔记(一)--static 看<Java编程思想>已经有一段时间了,一直以来都把笔记做在印象笔记上,今天开始写博客来记录. 第一篇笔记来写static关键字. static static表示"全局"或者"静态"的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念. 被static修饰的成员变量和成员方法独立于该类的任何对象.也就是说,它不依赖类特定的实例,被类的所有实例共享. 只要这个…
3.1  更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("Hello, world"); 我们都会感觉太冗长了,能不能简单一些呢?静态导入可以省略掉System,就像这样 import static java.lang.System.*; public class Hello { public static void main(String[] args) {…
Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层反编译知识. 1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子…
2017 ---新篇章  今天终于找到阅读<java编程思想>这本书方法了,表示打开了一个新世界. 第一章:对象导论 内容不多但也有20页,主要是对整本书的一个概括.因为已经有过完整JAVA se的基础,看起来压力不大.全书概括就不做记载了 第五章:初始化与清理 初始化: 1.JAVA构造器: 命名:必须与类名相同 作用:保证在操作对象之前已经进行了对象初始化操作,没有返回值(new 表达式确实返回了对新建对象的引用,但构造器本身没任何返回值) 2.方法的重载: 相同方法名 ,不同的方法 和功…
PS:最近一直忙于项目开发..所以一直没有写博客..趁着空闲期间来一发.. 学习内容: 1.初始化 2.清理 1.初始化   虽然自己的Java基础还是比较良好的..但是在解读编程思想的时候还是发现了许多的细节问题自己并没有完全的掌握.既然是研磨,那么就应该更加的细致.   i.构造方法的重载.   首先说明一下,为什么构造方法需要重载.   需要重载的一个重要原因就是,因为我们的构造器只能有一个名字,也就是和类名相同.但是如果我们需要通过不同的方式去构造一个对象的时候我们该如何是好?那么这里就…
今天继续读<java 编程思想>,读到了复用类一章,看到总结写的很好,现贴上来,给大家分享. 继承和组合都能从现有类型生成新类型.组合一般是将现有类型作为新类型底层实现的一部分来加以复用,而继承复用的是接口. 在使用继承时,由于导出类具有基类接口,因此它可以向上转型至基类,这对多态来讲至关重要. 尽管面向对象编程对继承极力强调,但在开始一个设计时,一般应优先考虑使用组合(或者可能是代理),只在确实必要时才使用继承.因为组合更具灵活性.此外,通过对成员类型使用继承技术的添加技巧,可以在运行时改变…
注解(元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在之后的某一个时刻非常方便地使用这些数据. ---<Java编程思想> 其实注解可以理解为一个工具类,只要使用了这个工具类后,主体类将会添加一些功能,就好像一个法师身边多了一个小精灵.注解在一定程度上是把元数据和源代码文件结合在一起,而不是保存在外部文档中这一个大的趋势所催生的,不用去配置xml文件,不用去修改一些变量.之所以这么说注解,有注解本身特性所决定的,只要在类.方法.变量等代码的上方或者前方添加某个注解,那么我们将…
现在是够懒得了,放假的时候就想把这篇笔记写出来,一直拖到现在,最近在读<Java编程思想>,我想会做不止这一篇笔记,因为之前面试的时候总会问道一些内部类的问题,那这本书的笔记就从内部类开始说起. 一.为什么需要内部类 1.一个内部类的对象可以访问它的外围类的私有数据. 2.对于同一个包中的其他类来说,内部类能够隐藏起来. 3.使用内部类实现多重继承. 二.内部类重要提要 1.在方法内部或者方法内部的作用域的内部类 eg:方法内部的内部类 public interface InnerInterf…
在java编程思想第四版中需要使用net.mindview.util包,大家可以直接到http://www.mindviewinc.com/TIJ4/CodeInstructions.html 去下载,并按照所在页面的操作进行操作.当然也可以直接我下载下面的链接,下载的直接是JAR包,可以直接导入并使用: net.mindview.util包:百度网盘:点击下载  密码: ggpi java编程思想第四版源码:百度网盘:点击下载  密码: ur3e 下面我简单的介绍一下源码在Eclipse中的导…
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类的定义是简单的,但是它的语法确实很是复杂,让人不是很好理解.下面就内部类做一个小结. 一.内部类的分类 总的来讲内部类分为普通内部类,匿名内部类,局部内部类,嵌套类(静态内部类)等.下面简要的介绍以下这些内部类定义的语法. (1).对于普通的内部类,就是在外围类中插入另一个类的定义.如下面的代码: package lkl1; ///封装一个包裹类 public class Parcel { ///在一个类的内部定义的另一个类,称之为…
Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层反编译知识. 1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子类访问)之外,其它所有的方法都是动态绑定,这意味着…
[注:此博客旨在从<Java编程思想>这本书的目录结构上来检验自己的Java基础知识,只为笔记之用] 第一章 对象导论 1.万物皆对象2.程序就是对象的集合3.每个对象都是由其它对象所构成的4.每个对象都拥有其类型5.同一个类型的对象可以接收同样的消息 简单来说:对象具有状态,行为和标识 每个对象都是也给服务提供者,它通过使用其他对象提供的服务来完成自己服务 在Java语言中是单根继承 1.9 容器>java中指List,Map,Set 1.91 参数化类型>泛型 eg:List&…