zoukankan      html  css  js  c++  java
  • 面向对象接口

    一、   接口的基础知识

    1、为什么需要接口

    为解决实际应用中,单一继承无法解决的问题

    2、什么是接口

    a)   基本概念?

    接口是一种特殊的抽象类

    接口是一种规范和标准,可以约束类的行为,是一些方法特征集合,但方法没有方法体

    b)   基本语法

    访问修饰符 interface 接口名{

                       //定义 方法(没有方法体),方法的访问修饰符默认为public

                       //定义 属性(默认是公共的静态的常量)

                                         数据类型 常量名=值;

    }

    访问修饰符只能为public和默认的

    c)   注意事项?

    1.接口命名,接口字必须和文件名相同

    2.接口中的方法没有方法体

    3.接口中的属性名必须大写,且要赋值

    4.接口不能实例化,没有构造方法

    5.接口支持多重继承,一个接口可以继承多个接口,但不能继承类

    6.接口中的方法,必须被所有实现接口的类具体实现

    3、一个类如何实现接口

    class 类名 implements 接口名{

        //必须对接口中的方法,具体实现

    }

    4、一个类如何继承另外一个类,且同时实现一个接口【变相的让1个类实现多重继承】

    class 子类名 extends 父类名 implements 接口1,…接口n{

       

    }

    5、接口的好处?

    接口体现了约定和实现相分离的原则

    弥补了Java类单一继承的不足,有利于代码的扩展和维护

    6、 抽象类和接口的异同点?【常见笔试题】

    相同点

    1. 1.  二者都不可以实例化
    2. 2.  二者都包含抽象方法,必须被非抽象的子类重写或实现
    3. 3.  二者都可以用来实现多态

     

    不同点:

    1、 抽象类只能单一继承,而接口可以支持多重继承

    2、 抽象类中除抽象方法外,还可以有非抽象的方法;接口中的方法只能是抽象方法

    3、 抽象类可以有构造方法,接口没有

    4、 抽象类中的变量可以不赋值,接口中的变量必须赋值

    5、 抽象类中可以定义静态方法,接口不可以

    二、    面向接口编程

    1、接口表示一种能力

    2、接口表示一种约定

    3、面向接口编程的好处?

    a)   实现接口和实现的分离

    b)   可以降低代码间的耦合性

    c)   提高程序的可扩展性和可维护性

  • 相关阅读:
    python中的深拷贝和浅拷贝
    Andrew NG 机器学习编程作业6 Octave
    Andrew NG 机器学习编程作业5 Octave
    梯度下降算法对比(批量下降/随机下降/mini-batch)
    无监督算法
    深度学习的方差与偏差
    Andrew NG 机器学习编程作业4 Octave
    数据约束
    数据库的查询
    MySQL的入门与使用,sqlyog对数据库,表和数据的管理
  • 原文地址:https://www.cnblogs.com/shuchongzeishuai/p/6991120.html
Copyright © 2011-2022 走看看