美文网首页java编程/提升
浅读java圣经-java编程思想(一)

浅读java圣经-java编程思想(一)

作者: 程序员ken | 来源:发表于2021-03-20 20:34 被阅读0次

    前言:

    这本书里面有了大量的c++特点和java进行比较,如果对c++不是很了解的需要学习一些c++的基本知识,当然作为java开发者的进阶也很必要,毕竟java的底层是用c++写的。

    一、 掌握数据存储和内存分配

    首先,书中一开始就说了我们在程序运行期间,要做到数据保存在什么地方要心中有数,特别是内存的分配,如果不想成为一个高级点的程序员这点可以忽略。因为在数据较大的情况下,做web开发的后端工作者需要优化数据库以及优化内存设置,当然还有优化代码,减少不必要的内存开销。最终就能到达高效的目的。

    file

    二、java中的数组

    几乎所有编程语言都支持数组,但c++中的数组,我们尽量不用使用,因为c++的数组越界不会校验,这样,c++可以‘越界’赋值,然后取值时可能会报指针错误【野指针】,这样问题还难以发现。正是由于每次设置值都会校验数组是否越界,所以java操作数组的效率 不如 c++.

    file
    file
    file

    三、java中内存释放

    java有回收机制,c++中没有可能会存在粗心的情况,就是忘记清除对象。从而造成内存溢出。

    file
    file
    file

    四、对于合成和继承的设计

    合成: 所谓合成就是类里面包含其他类对象 或内部类 (我的理解)

    对于一个类尽可能能多级衍生子类 ,进行拓展父类的方法,当然也不需要层层继承,造成运行效率会降低,还有就是复杂程度过高。一半建议不用超过5级。

    file

    五、新旧集合

    1. 如图 Vector 、BitSet 、Stack 、Hashtable 是java 1.1里面就有的集合类
    2. 设计不支持泛型,这样什么类型的值都能塞进去,造成的较坏的影响是类信息会被抛弃。这样在java的jvm里面是 类型擦除。


      file
      file
      file

    现在我们常用的集合 List Set

    file
    file

    本文来源于:程序员ken,专属平台有csdn、思否(SegmentFault)、 简书、 开源中国(oschina)、掘金,转载请注明出处。

    相关文章

      网友评论

        本文标题:浅读java圣经-java编程思想(一)

        本文链接:https://www.haomeiwen.com/subject/efxgcltx.html