• 接口


    接口

         意义 :  【1】接口中定义的一些系列方法表示的是一种种的能力。接口让实现类实现这些能力,实现类的能力得到拓展和升级。实现类根据自身特性实现接口中定义的方法。    

            【2】接口也可表示一种约定(协议),约定(规范)了实现类应该具备(has a)的能力。

            【3】实现类必须实现接口中所有的方法,所以接口规范了实现类的行为

              关键字   : interface

      public interface MyInterface {
          public static final String version = "1.0";
          public int count = 10; // 默认是static final类型
      }

          特性:【1】接口可以声明变量都是static final 的类型

             【2】接口中的方法都是公共抽象方法  (省略不写 abstract 一定是抽象方法)

               【3】接口不能拥有构造方法和创建对象

             【4】接口可以继承,一个接口可以继承多个接口

             【5】一个类可以实现一个或者多个接口,该类称为实现类,实现类必须实现接口中的所有抽象方法;

             注意:一个类只能继承一个父类,同时实现多个接口。继承在前,实现在后。

              public class ImplClass3 extends AbsClass implements AInterface,BInterface
          {
          }

       接口实现多态和继承实现多态:

          【1】接口实现多态: 接口类型 引用 实现类对象

          【2】继承实现多态: 父类类型 引用 子类对象

          【3】接口定义的方法被实现类实现,通过接口引用实现类时,调用接口中的方法时,执行的是实现类实现的方法。

          【4】实现类对象具备接口中定义的能力 是一种has a 关系

          【5】子类对象是一种父类类型 是一种is a 关系

              抽象类和接口的异同比较:  

                        【1】 抽象类和接口都是引用数据类型,他们都不能创建对象。

                        【2】他们都可以定义抽象方法,都可以实现多态。但是抽象类可以定义非抽象方法,而接口中定义的都是抽象方法。

                        【3】抽象类和接口都具有传递性。抽象类是单根性(单继承),而接口是多继承。

                        【4】在概念上,都可以重写抽象方法。子类重写抽象类,实现类实现接口

                        【5】抽象类和子类解决的是模块内的问题(代码重用,重写,多态)而接口解决的是模块间的问题 => 高内聚,低耦合。接口可以用解耦模块。

      

  • 相关阅读:
    访问者模式(Visitor)
    策略模式
    职责链模式(Chain of Responsibility)
    模版方法模式
    逃离大厦第80关与马踏棋盘
    结合JDK源码看设计模式——迭代器模式
    Java并发——线程介绍
    结合JDK源码看设计模式——模板方法模式
    结合JDK源码看设计模式——桥接模式
    结合JDK源码看设计模式——组合模式
  • 原文地址:https://www.cnblogs.com/dedema/p/10776568.html
Copyright © 2020-2023  润新知