zoukankan      html  css  js  c++  java
  • Java面向对象编程之接口·7

    • 什么是接口
      • 抽象方法的集合,接口通常以interface来声明,一个类通过继承接口的方式,从而来继承接口的抽象方法
      • 语法

    interface 名称 [extends 其他的接⼝名]
     {  
         // 声明变量 
        // 抽象⽅法 int getMoney(); 
     }
    接口的特点
    

      

    • 接口的特点
      • 接口的方法都是抽象方法,默认都是public abstract ,其他修饰符都会报错
      • 接口中可以含有变量,但是接口中的变量会被隐性的指定为public static final
      • 类描述对象的属性和方法,而接口则包含类要实现的方法
      • 接口无法被实例化,需要被实现才行
      • 一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类
    • 类和接口的区别
      • 接口没有构造函数
      • 接口里可以有静态方法和方法体
      • 接口中所有的方法都必须是抽象方法(JDK8以后就不是了)
      • 接口不是被类继承了,而是要被类实现
      • 接口支持多继承,类不支持多个类继承
    • 接口的实现implements
      • 当类实现接口的时候,类要实现接口中所有的方法,不然类必须声明为抽象的类,使用implements关键字实现所有接口
      • 语法

    class 类名 implements 接⼝名称[, 其他接⼝名称, 其他接⼝名称]{ 
            //要实现的⽅法
     }
    

      

    • JDK8新特性
      • interface中可以有static方法,但必须有方法实现体,该方法只属于该接口,接口名直接调用该方法
      • 接口中新增default关键字修饰的方法,default方法只能定义在接口中,可以在子类或子接口中被重写,default定义的方法必须有方法体
      • 父接口的defalut方法如果在子接口或子类被重写,那么子接口实现对象,子类对象,调用该方法,以重写为准
      • 本类,接口如果没有重写父类(即接口)的defalut方法,则在调用default方法时,使用父类定义的defalut方法逻辑

    public interface IPay{
     // static修饰符定义静态⽅法 
     static void staticMethod() { 
     System.out.println("接⼝中的静态⽅法"); 
     } 
     // default修饰符定义默认⽅法 ,默认⽅法不是抽象⽅法,可以不重写也可以重写 
     default void defaultMethod() {
      System.out.println("接⼝中的默认⽅法");
       } 
       }
    

      

    Bug? 不存在的!
  • 相关阅读:
    16进制数至字符串转换
    综合评价模型C++实现
    综合评价模型
    Eigen使用矩阵作为函数参数
    Eigen子矩阵操作
    Eigen矩阵基本运算
    c++矩阵运算库Eigen简介
    三次样条插值算法C++实现
    一个 图片 滚动 飞入的css特效
    在TTF字体中提取想要的文字
  • 原文地址:https://www.cnblogs.com/mrchenyushen/p/14758055.html
Copyright © 2011-2022 走看看