软件构造期末复习总结(第三章)

Chapter 3: Abstract Data Type (ADT) and  
Object-Oriented Programming (OOP)  

3.1


    1.除Object外所有的类都有一个父类,即Object是所有类的子类

    2.重载(Overload):方法名相同但参数列表不同,但返回类型必须相同。

    3.重写(Override):子类的方法不同于父类的方法时需要重写。

    4.Java是一种静态类型语言,在编写程序时(程序运行之前)就检查一些错误,python是动态类型语言,在程序运行时才会检查错误。

    5.静态的捕获一个bug比动态的捕获它要好,动态捕获要比不捕获它好。

    6.final修饰的变量不能被改变,被final修饰的类不能被继承,被final修饰的方法不能被重写

    7.String类型是不可变的:

    2017软件构造

    8.在一个字符串末尾添加内容时会先创建一个新的String然后返回,StringBulider是可变类型

    2017软件构造

    9.可变类型存在的风险

    2017软件构造

    2017软件构造

    分析可知myData中的内容已被修改

    10. List,Set,Map;(都是可变的, 也可不可变)

    2017软件构造

    11. LinkedList是采用链表的方式来实现List接口的,它本身有自己特定的方法,如: addFirst(),addLast(),getFirst(),removeFirst()等. 由于是采用链表实现的,因此在进行insert和remove动作时在效率上要比ArrayList要好得多!适合用来实现Stack(堆栈)与Queue(队列),前者先进后出,后者是先进先出.

    12. throwsNullPointerException出现原因是,对一个“null”进行了操作,“null”不同于空字符串或("")。“null”不可用做参数或返回值


THE END        2018.6.14

相关文章: