zoukankan      html  css  js  c++  java
  • 接口

    接口

        无构造方法

       方法都是全局抽象方法

        属性全都是静态全局常量

      接口是一个不能被实例化的的类型。

      父类中写的是对一种类型的约束,接口是对一种方法的约束,具有这种方法的都可以实现这个接口

    为什么要使用接口

      一定程度弥补了继承的不足

    接口的特点

      接口的方法都默认public public  abstract修饰

      接口不能创建对象

      接口中的变量都是静态常量

      方法都需要被子类实现,否则子类也需要抽象类

    如何使用接口

      要满足has-a的关系,有关键字impelments,可以多实现,如果有继承有实现,则先继承实现的接口使用逗号隔开

    面试题:接口和抽象类的区别

           相同点:

      都不能实例化,都包含抽象方法,用于描述系统提供的服务,不必提供具体实现

      不同点:

    1. 在抽象类可以认为部分方法提供和默认实现,而接口中只能包含抽象方法
    2. 抽象类便于复用,而接口便于代码维护
    3. 一个类只能继承一个直接的父类

     接口的语法

         public  interface  接口名{
            //接口成员
           }
        接口成员可是全局变量和公共的抽象方法

    案例:


    1. public interface UsbInterface {    //编写接口
       void service();
      }
    2. public class FenShan implements UsbInterface {  //风扇实现USB的功能
       
       public void service() {
        System.out.println("风扇开始转动.....");
        
       }
      }
    3. public class Disk implements UsbInterface {//U盘实现USB的功能
       
       public void service() {
        System.out.println("开始传送数据......");
        
       }
      }
    4. 测试
    5. public class TestUsb {
       public static void main(String[] args) {
        UsbInterface uDisk = new Disk();
        uDisk.service();
        
        UsbInterface usbFan= new FenShan();
        usbFan.service();
       }
      }

       

      

  • 相关阅读:
    CentOS 阿里源
    使用分区挂载 ftp 目录
    Docker-compose常用命令
    docker 启动容器失败 id already in use
    Docker daemon.json 的配置项目合集
    Watchtower
    umount 时目标忙解决办法
    opencontrail 参考资料
    使用disk-image-builder(DIB)制作Ironic 裸金属镜像
    Nodejs常见安装
  • 原文地址:https://www.cnblogs.com/li-ding-yong/p/13020934.html
Copyright © 2011-2022 走看看