zoukankan      html  css  js  c++  java
  • 对接口编程:接口和抽象类

        在《大话设计模式》这本书中,我会听到这个字眼“对接口编程”,而在文中的类图中。会提出这样一个疑问?为什么有的用的是:接口?有的用的是抽象类呢?

        本文主要介绍下面内容:接口、抽象类。

        文章的最后,会给出软考下午设计模式题中的一些做题技巧


    • 什么是接口?
        接口是包括一组虚方法的抽象类型,当中每一种方法都有其名称、參数和返回值。

    接口方法不能包括不论什么实现,CLR 同意接口能够包括事件、属性、索引器、静态方法、静态字段、静态构造函数以及常数。


        注意:一个类能够实现多个接口,当一个类继承某个接口时,它不仅要实现该接口定义的全部方法。还要实现该接口从其它接口中继承的全部方法。



    • 什么是抽象类?
        抽象类提供多个派生类共享基类的公共定义,它既能够提供抽象方法,也能够提供非抽象方法。

    抽象类不能实例化,必须通过继承由派生类实现其抽象方法,因此对抽象类不能使用new keyword,也不能被密封。假设派生类没有实现全部的抽象方法,则该派生类也必须声明为抽象类。



    • 对照分析



    • 考试秘籍

      以下从软考设计模式的做题技巧入手。提供一些參考:(以Java语言为例)

    抽象类用keywordabstract声明,用extends继承。

    抽象类的目的是定义一个框架。规定某些类必须具有的一些共性。抽象方法:没有函数体的方法

      注意包括抽象方法的类,一定是抽象类。

           抽象类的直接派生类必须实现其抽象方法。抽象类仅仅能用于继承,不能用于创建对象(所谓的new)。


    接口用keywordinterface声明,keywordimplements实现。接口用于替代多继承的概念。

      注意:直接继承了接口的类。必须实现接口中的抽象方法;间接的则能够实现,也能够不实现。


    区分:

      1、接口和抽象类都不能创建对象。

      2、抽象类不能參与多继承,抽象类能够有非静态的成员变量,能够有非抽象的方法;

      3、接口能够參与多继承。全部的属性都是静态常量。全部的方法都是public方法。


    查看全文

  • 相关阅读:
    Understanding about Baire Category Theorem
    Isometric embedding of metric space
    Convergence theorems for measurable functions
    Mindmap for "Principles of boundary element methods"
    Various formulations of Maxwell equations
    Existence and uniqueness theorems for variational problems
    Kernels and image sets for an operator and its dual
    [loj6498]农民
    [luogu3781]切树游戏
    [atAGC051B]Three Coins
  • 原文地址:https://www.cnblogs.com/llguanli/p/6914983.html
Copyright © 2011-2022 走看看