• Thinking in java(1):对象导论


    纯粹的面向对象程序设计的几个特性:
    1. 万物皆对象
    2. 程序是对象的合集,他通过发消息告诉彼此要做什么
    3. 每个对象都有自己的由其他对象所构成的存储
    4. 每个对象都有其类型
    5. 某一特定类型的所有对象都可以接收同一类型的消息

    每个对象都有一个接口
    每个对象都有自己的服务(这个是为了高内聚性)
    具体类的实现被隐藏,调用方不需要知道被调用方的具体实现
    复用具体类实现 代码复用是面向对象程序设计的最了不起的优点之一
    使用现有的类合成新的类,这种概念称作组合。如果组合是动态发生的,这个称作聚合。 组合关系在UML图中是通过实心菱形来实现的,例如每个汽车都有一个引擎,则UML图中,引擎一个实心菱形指向汽车。

    继承:
    继承的UML图是子类一个空心的三角箭头指向基类

    “是一个”与“像是一个”的关系:
    最完美的继承就是子类不存在新增加的方法,而是覆盖父类的方法,实现新的功能。这是一种是一个的关系,但实际上这个情况比较完美。更多的情况下,子类肯定有新增的方法,这个就是 像是一个 的关系。

    伴随多态的可互换方法:
    基类中的方法操作都是泛化的,不关心具体子类,而是子类公用的。而多态的实现依赖于编译器的后期绑定的实现。具体调用的对象在方法调用时才确定。
    子类转换成基类的过程称为向上转型,有向上转型的需要时才使用继承。

    单根继承结构:
    在java中所有类都继承自Object类

    容器:
    好的OOP语言都有容器,用来实现存储对象的集合。

    参数化类型:
    为了减少从集合中放入或者取出数据的各种转型。

    对象的创建和生命周期:
    java完全采用了动态内存分配的技术,当你想创建对象的时候就必须使用new关键字来构建对象的动态实例。
    在栈上创建的对象,编译器可以知道他的生命周期并且动态的销毁他们,而在堆上创建的对象,就需要靠垃圾回收机制来实现了。

    异常处理,处理错误:
    自编程语言面世以来,错误处理时最困难的问题之一。异常处理不是面向对象的特征之一。

    并发:
    java的并发是内置于语言中的。

    黎明前最黑暗,成功前最绝望!
  • 相关阅读:
    Proj THUDBFuzz Paper Reading: PMFuzz: Test Case Generation for Persistent Memory Programs
    入围 WF 后训练记
    算法竞赛历程
    2021 多校 杭电 第十场
    2021 多校 杭电 第九场
    2021 多校 牛客 第十场
    2021 多校 牛客 第九场
    2021 多校 杭电 第八场
    2021 多校 杭电 第六场
    2021 多校 杭电 第七场
  • 原文地址:https://www.cnblogs.com/Kidezyq/p/5588190.html
Copyright © 2020-2023  润新知