zoukankan      html  css  js  c++  java
  • Java接口

    概念:

    接口(英文:Interface),可以理解为一种特殊的抽象类。里面只有常量和抽象方法(不需要写abstract)。接口可以多实现(继承),类只能是单继承。

    定义:

    interface 接口名 [extends 父接口列表]{
        final 类型 常量名=值;//常量
        public void 方法名(形参);//抽象方法
    }

    注:

    1.接口尽量的小,功能太复杂的接口是一种坏味道的接口。——接口分离原则。
    2.接口定义的时候,接口名子,尽量是形容词,或者是描述性质的词。

    Interface关键字用来声明一个接口。下面是接口声明的一个简单例子。

    interface IAnimal {//定义IAnimal接口,约定俗成在接口名(Animal)前加I
       public void eat();//抽象方法
       public void travel();
    }

    接口有以下特性: 

    • 接口是隐式抽象的,当声明一个接口的时候,不必使用abstract关键字。
    • 接口中每一个方法也是隐式抽象的,声明时同样不需要abstract关键子。
    • 接口中的方法都是公有的。

    接口的实现

    当类实现接口的时候,类要实现接口中所有的方法。否则,类必须声明为抽象的类。

    类使用implements关键字实现接口。在类声明中,Implements关键字放在class声明后面。

    实现一个接口的语法,可以使用这个公式:

    [abstract] class 类名 extends 父类 implements 接口列表{
    
    }

    下面看一个实例

    public class MammalInt implements IAnimal{//实现IAnimal接口
     
       public void eat(){//实现方法并重写
          System.out.println("Mammal eats");
       }
     
       public void travel(){//实现方法并重写
          System.out.println("Mammal travels");
       } 
     
       public int noOfLegs(){
          return 0;
       }
     
       public static void main(String args[]){
          MammalInt m = new MammalInt();
          m.eat();
          m.travel();
       }
    }

    在实现接口的时候,也要注意一些规则:

    • 一个类可以同时实现多个接口。
    • 一个类只能继承一个类,但是能实现多个接口。

    接口的多重继承

    在Java中,类的多重继承是不合法,但接口允许多重继承,。

    在接口的多重继承中extends关键字只需要使用一次,在其后跟着继承接口。 如下所示:

    public interface Hockey extends Sports, Event//继承了Sports和Event两个接口

    以上的程序片段是合法定义的子接口,与类不同的是,接口允许多重继承,而 Sports及 Event 可能定义或是继承相同的方法

  • 相关阅读:
    简体繁体互译代码段:
    require.js使用baseUrl + paths导入文件配置的3种方法
    vue + vue-router + vue-resource 基于vue-cli脚手架 --->笔记
    解决webstorm卡顿问题
    js 函数闭包内部返回函数体调用方法难点解答
    java学习笔记之位运算符
    java集合类学习笔记之LinkList
    java集合类学习笔记之ArrayList
    java学习笔记之对象序列化
    springboot集成巨杉数据库
  • 原文地址:https://www.cnblogs.com/jonsnow/p/6235669.html
Copyright © 2011-2022 走看看