• java中的interface


    转载:

    Java不支持多重继承,即一个类只能有一个父类
      为了克服单继承的缺点,Java使用了接口,一个类可以实现多个接口
      接口是抽象方法和常量值定义的集合,是一种特殊的抽象类
    接口中只包含常量和方法的定义,没有变量和方法的实现
    接口中的所有方法都是抽象的
    接口中成员的访问类型都是public
    接口中的变量默认使用public static final标识(可以在定义的时候不加此修饰,系统默认)
      接口通过使用关键字interface来声明
    格式:interface 接口的名字
      接口体:
    接口体中包含常量定义和方法定义两部分
    接口体中只进行方法的声明,不允许提供方法的实现
    方法的定义没有方法体,且用分号结尾
    public interface Runner
    {
    int ID=1;
    void run();
    }
      接口允许被继承,可以用extends继承一个已有的接口
    public interface Runner
    {
    int ID=1;
    void run();
    }
    interface Animal extends Runner
    {
    void breathe();
    }
      通过使用implements实现接口中的所有方法
    class Fish implements Animal
    {
    public void run()
    {
    System.out.println("Fish is swiming");
    }
    public void breathe()
    {
    System.out.println("Fish is bubbling");
    }
    }

    如果只需要实现某接口中定义的部分方法,可以通过定义一个抽象类来实现
    abstract class LandAnimal implements Animal
    {
    public void breathe()
    {
    System.out.println("LandAnimal is breathing");
    }
      一个类可以继承一个父类的同时,实现一个或多个接口,extends关键字必须位于implements关键字之前
    class Student extends Person implements Runner
    {
    ……
    public void run()
    {
    System.out.println("The student is Running");
    }
    ……
    }

    在类中实现接口的方法时,方法的名字、返回类型、参数个数及类型必须与接口中的完全一致
      接口中的方法默认是public 的,所有类在实现接口方法时,一定要用public来修饰
      如果接口的方法的返回类型不是void,则在类中实现该接口方法时,方法体至少要有一个return语句
      如果是void类型,类体除了两个大括号以外,可以没有任何语句
      Java中提供的接口都在相应的包中,通过引入包可以使用Java提供的接口,也可以自己定义接口
    一个Java源文件就是由类和接口组成的
      接口可以增加很多类都需要实现的功能,不同的类可使用相同的接口,同一个类也可实现多个接口
      接口只关心功能,并不关心功能的具体实现,使用相同接口的类不一定有继承关系
      public接口:接口声明时,关键字interface前面加上public关键字,可以被任何一个类使用
    友好接口类:一个接口不加修饰,友好接口可以被同同一包中的类使用。

  • 相关阅读:
    Python 更新pip报错:Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问
    Vs code 配置(1)-win10
    博客园主题--sukura
    log4j
    安装ant问题
    freemarker string= null
    学习随想
    j2ee学习资料收集
    eclipse + marven
    好文mark
  • 原文地址:https://www.cnblogs.com/weilen/p/8283480.html
Copyright © 2020-2023  润新知