第11章持有对象--java编程思想中文第四版_Thinking in Java书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > > Thinking in Java > 第11章持有对象--java编程思想中文第四版
ajian005 Thinking in Java 的书评 发表时间:2011-05-28 22:05:34

第11章持有对象--java编程思想中文第四版

 博学,审问、慎思、明辨、笃行
 读实用书时要提出的四个问题:
      (1)整体来说,这本书到底在谈些什么?big what? 并没有改变多少。
      (2)作者细部说了什么,怎么说的? small what? how?
      (3)这本书说得有道理吗? 是全部有道理,还是部分有道理?why?
           作者最终的目标,加上他建议的达成目标的方法--这要看你认为追求的是什么,以及什么才是最好的追求方法而定。
           在什么范围,什么条件下适用,在什么范围,什么条件下不适用。要知道它能做什么,它不能做什么
      (4)这本书跟你有什么关系? 理论联系实际
           赞同一本实用性的书,确实需要你采取行动。 照着作者希望你做的方式来行动。How
            行动:为达到某种目的而进行的活动。行动目标,行动方法,行动开始时间,结束时间,行动人,行动地点,行动方式。
            学车/骑自行车:理论就是要做题,实践:就是要上车操练。
            武术:主要是实践
            厨艺:理论就是看菜谱,实践:按菜谱买菜,配菜,实际炒菜,品尝,调整
            木匠/铁匠/建筑师:设计、实践,调整,在设计,在实践。
            美容美发:
            装修
            裁剪
            编程/软件工程/建筑工程在道的层次上很相近
        最忌讳:1 没有目标/提不出问题,没有时间和资源限制,自己太放松,要有适当的紧迫感和压力感
                2 重“看书”,轻“提问题,思考,讨论,实践” 有没有收获 关键看思考的深度是否能够表达出来,实践出的东西是否是可见的,并基于这个一个原型反馈不断改进
      1 什么是容器?容器做什么用的? java容器放在内存中还是放在外存中呢?java如何使用内存的或内存管理?java有几种类型的容器,每一种容器主要做什么用途呢?
      2 每一节说了什么,怎么说的?
      3 这一章说的有道理吗? 是全部有道理,还是部分有道理? why要用容器?
      4 这一章跟自己有什么关系?
        赞同一本实用性的书,确实需要你采取行动。 照着作者希望你做的方式来行动。How
       连接网络、连接数据库、读写文件、Spring、Hibernate、Struts启动过程中如何读写文件的呢?
       计算机启动顺序及原理是什么?OS(Linux/Windows)启动加载原理是什么? DB(Oracle/Mysql)启动加载原理是什么? 应用服务器(Tomcat)启动原理?JVM启动原理?应用程序启动原理是什么?
       实际操作(编写代码),做实验。
  编程与开车,厨艺 有想通的地方,理论指导,以实践为主。
  没做练习题:(3)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)-(26)(27)(28)(29)(30)(31)()
        本章涉及到得算法和数据结构:数据结构 数组、栈、队列、链表、递归、红黑-树、哈希表(但没包括图,串结构在String中):Array/List/Set/Queue/Map/......
                                   (内存的)排序、查找:Arrays和Collections(但没包含外存排序、查找) 理清数据结构特性和算法思想从而可以帮助较好的使用
        本章涉及到得编程思想及设计模式: 迭代器模式Iterator、适配器模式
        本章涉及到比较好的工具:net.mindview.util.Stack
        本章设计到得计算机理论知识:java内存管理
  能力级别:不会(了解)——领会(理解)——熟练——精——通(融汇贯通)
第11章持有对象(容器基础研究) (研习:1 掌握层次:熟练)P252 练习参考P199
       容器(数据结构):数组、List(按着插入的顺序保持元素)、Set(对于每个值只保留一个对象)、Queue(队列)和Map(某些对象与其他一些对象关联起来的关联数组)
   11.1 泛型和类型安全的容器(研习:1 掌握层次:)P252
        通过使用泛型,不仅知道编译器将会检查你放置到容器中的对象类型,而且在使用容器中的对象时,可以使用更加清晰的语法。
   11.2 基本概念(研习:1 掌握层次:熟练)P255
        Java容器类按用途划分两个不同的概念:
          1)Collection:一个独立元素的序列,包含List(ArrayListLinkedList)、Set、Queue
          2) Map: 键值对
   11.3 添加一组元素(研习:1 掌握层次:熟练)P256
   11.4 容器的打印(研习:1 掌握层次:熟练)P257
        List(ArrayListLinkedList)、
        Set(HashSet(最快的查找技术)TreeSet(按着结果升序排序)和LinkedHashSet(按着插入的顺序保持对象))、
        Map(HashMap(最快的查找技术)TreeMap(按着结果升序排序)和LinkedHashMap(按着插入顺序保存键)同时还保留了HashMap的查询速度),就像一个简单的数据库。
   11.5 ListP259
        ArrayList:擅长随机访问元素,但在ArrayList的中间插入和删除元素时较慢。
        LinkedList:在中间插入和删除元素快,顺序访问快,但随机访问相对比较慢。
   11.6 迭代器P262
   11.7 LinkedListP264
   11.8 StackP266
   11.9 Set P267
        Set不保存重复的元素,Set具有与Collection完全一样的接口,没有任何额外的功能。实际上Set就是Collection只是行为不同。
        Set是基于对象的值来确定归属性的。
        HashSet 哈希算法,查询时间时间复杂度为:O(1)
        TreeSet 将元素存储在红-黑树数据结构中,而HashSet是用的是散列函数。LinkedHashList也用了散列,维护了元素的插入顺序。
   11.10Map P269
   11.11QueueP272
        LinkedList支持队列的行为,并且它实现了Queue接口。
      11.11.1 PriorityQueue 队列规则
   11.12Collection和IteratorP275
   11.13Foreach与迭代器P277
   11.14总结P281
   
   

展开全文
有用 0 无用 0

您对该书评有什么想说的?

发 表

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读