前言

这个月一直没更新,就是一直在读这本《Java编程思想》,这本书可以在Java业界被传神的一本书,无论谁谈起这本书都说好,不管这个人是否真的读过这本书,都说啊,这本书很好。然后再看这边书的厚度,哇塞,厚的真的不止一点点,所以很多人看了没多久就放弃了,看不下去,但是基于它的厚度,就说,这是一本好书。也有人说,看了没什么用的一本书,甚至还去嘲笑那些正在看的人,说还不如看点实际的技术。那么在我的世界里,如果一本书没有读过,如果妄加评论的话,没有任何的意义。所以我真的仔仔细细读了下来,书上也写了很多的笔记,但是我不会把它们都写下来,因为太多了。

不过,确实要把这么厚的书读薄,是真的不容易。我想了很多种方式去记录我的读书笔记,但是最后都觉得不好,我觉得我的笔记应该有下面的几个作用。

1、作为一个线索,以后我自己能快速的回顾和查询。

2、已经知道的,不提及;不知道的,重点记录。

3、让即使没有看过的人也能知道里面到底有什么值得他们去看的。

所以最后我决定用一种提问的方式,或者是一种陈述的方式,来记录我的读书笔记,如果你能回答出下面的提问,或者能理解陈述的内容,那么证明书中的内容其实你已经了解。如果回答不出,或者答案不清晰不确定,那么你可以网上去查询这个问题的答案,或者翻阅书籍。

下面就是我记录的所有笔记。

笔记部分

1、什么是OOP?

2、public、private、protected的权限

3、什么是组合?什么是继承?

4、Java内存的分配方式

5、对象和对象的引用

6、java虚拟机垃圾回收的基本策略;停止-复制;标记-清扫;

7、控制对成员的访问权限是为了:让用户不要触碰他们不该触碰的部分,为了让类库的设计者可以更改类的内部工作方式

8、组合和继承如何选择?

9、final、static、和其对应方法和块加载和初始化的顺序

10、多态的作用是消除类型之间的耦合关系,多态是一项让程序员:“将改变的事物与未边的事物分离开来”的技术。

11、用继承表达行为间的差异,并用字段表达状态上的变化

12、接口和抽象类的对比

13、匿名内部类

14、泛型的作用是可以在编译期防止将错误类型的对象放置到容器中

15、容器之间的对比,如ArrayList和LInkedList等,再比如set、hashset、treeset等

16、优先队列PriorityQueue

17、异常处理的一个重要原则是“只有在你知道如何处理的情况下才捕获异常”

18、“报告”功能是异常的精髓所在

19、String的不可变性

20、StringBuffer和StringBuilder

21、所有的类都是在对于其第一次使用时,动态加载到JVM中的

22、加载-》链接-》初始化

23、instanceof是什么方法?

24、什么是动态代理?

25、利用泛型方法封装工具类

26、在泛型代码内部,无法获得任何有关泛型参数类型的信息。

27、数组区别于其他容器的三个方面:效率,类型,保存基本类型的能力

28、HashMap的内部是如何实现的?

29、使用I\O操作文件时要注意什么?

30、什么是对象序列化

31、enum和switch是一对冤家

32、注解为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后的某个时刻方便的使用这些数据。

33、注解能帮助我们避免编写累赘的部署描述文件。

34、进程和线程,进程是运行在它自己地址空间内的自包容的程序,一个线程是在进程中的一个单一的顺序控制流。

35、实现线程的两种方式

36、线程池的作用

37、加锁防止两个任务访问相同的资源,隐式,显式

38、volatile关键字是做什么用的

39、wait与notify和notifyAll

40、死锁的四个条件:至少有一个不能共享的资源、至少有一个任务它必须持有一个资源且正在等待获取一个当前被别的任务持有的资源、资源不能被任务抢占,必须有循环等待

41、防止死锁只要破坏四个条件中的任意一个

42、有很多免锁容器如ConcurrentHashMap等

43、确定多个线程不会同时读取和改变一个资源,这就是线程产生的最大难题

个人总结

作为现代快节奏的生活之下,能静下心来看书,着实不容易,所以我都觉得我看到的不够仔细,很多时候也漏下了很多重点。不过我相信你能找到它们的。

对于这本书来说,读完之后我发现有几个你需要注意的地方

1、这本书之所以大家都认为它好,是因为它涵盖了JAVA语言几乎所有的基础,它就如同一个博物馆,所有的藏品都已摆放整齐。

2、这本书的代码比文字更厉害,我可以准确的说,我在书上的笔记几乎很多都是在给代码写注释,同样是一页,代码比文字至少要花费两倍的时间去看,如果你直接跳过,那么你将错过很多精彩的部分。

3、设计模式在这本书里面灵活的穿插着,我真的庆幸我在看这本书之前看了设计模式,不然看书的过程中很多时候会不理解它说的设计模式是什么意思,从而看了之后,我也更加理解了一些设计模式的使用。

4、现在网络发达,很多问题网上都有现成的答案,所以很少会再翻开书去查找,而且这本书太重了,不适合携带,所以请你看书的时候保持一颗心,一遍理解,不懂就记。

5、尽信书不如无书,现在发展这么快,JAVA本身也不断的发展,1.9都要有了,所以很多书上的东西或许过时,很多已经在历史的长河中隐去了,所以看书的时候多看看外面的世界。

《Java编程思想》读书笔记的更多相关文章

  1. csapp读书笔记-并发编程

    这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...

  2. CSAPP 读书笔记 - 2.31练习题

    根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1)  属于第一种情况 sum = x ...

  3. CSAPP读书笔记--第八章 异常控制流

    第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...

  4. CSAPP 并发编程读书笔记

    CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...

  5. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  6. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  7. 《C#本质论》读书笔记(18)多线程处理

    .NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...

  8. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

  9. C#刨根究底:《你必须知道的.NET》读书笔记系列

    一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...

  10. Web高级征程:《大型网站技术架构》读书笔记系列

    一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...

随机推荐

  1. java8大基本数据类型

    基本类型 字节数 位数 最大值 最小值 byte 1byte 8bit 2^7 - 1 -2^7 short 2byte 16bit 2^15 - 1 -2^15 int 4byte 32bit 2^ ...

  2. 输入和输出--java序列化机制

    对象的序列化 什么是Java对象的序列化? 对象序列化的目标是将对象保存到磁盘上,或允许在网络中直接传输对象.对象序列化机制允许把内存中的Java对象转换成与平台无关的二进制流,从而保存或者传输.其他 ...

  3. tomcat部署最佳实践(一)

    Tomcat部署最佳实践 标签: linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 tomcat是玩web软件必会技能之一,今天我给大家介绍一下tomc ...

  4. TCP/IP网络协议基础知识集锦[转]

    引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP协议簇是由OSI七层模型发展而来的,之所以 ...

  5. java.lang.ClassNotFoundException: org.apache.jsp.WEB_002dINF.classes.views.index_jsp 问题解决方法

    本人使用的是taglib作为模板页,然后碰到的这个问题,如果有类似的可以参考. <%@tag description="Overall Page template" page ...

  6. python的组合数据类型及其内置方法说明

    python中,数据结构是通过某种方式(例如对元素进行编号),组织在一起数据结构的集合. python常用的组合数据类型有:序列类型,集合类型和映射类型 在序列类型中,又可以分为列表和元组,字符串也属 ...

  7. CentOS7 Nvidia Docker环境

    最近在搞tensorflow的一些东西,话说这东西是真的皮,搞不懂.但是环境还是磕磕碰碰的搭起来了 其实本来是没想到用docker的,但是就一台配置较好电的服务器,还要运行公司的其他环境,vmware ...

  8. dubbo refrence bean(服务引用)

    在xml上写一个dubbo标签就可以把远程的服务引用到本地使用: <dubbo:reference id="buyFoodService" interface="c ...

  9. BZOJ 1115: [POI2009]石子游戏Kam [阶梯NIM]

    传送门 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数.两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏.问先手是否必胜 ...

  10. POJ 2007 Scrambled Polygon [凸包 极角排序]

    Scrambled Polygon Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 8636   Accepted: 4105 ...