接口

1接口的介绍(规则)

接口体现的是对规则的声明,java中的接口更多体现的是对行为的抽象。

使用时机:如果你发现一个类中所有的方法,都是抽象方法,那么这个类的唯一价值,就是在声明规则,对于这种类,通常会改写为 Java 中的接口。

2语法和细节

  • 定义格式:public interface 接口名 {}

  • 接口不能实例化

  • 实现格式:public class 类名 implements 接口名 {}

  • 接口的子类(实现类):

    • 重写所有抽象方法

    • 将实现类变成抽象类 (不推荐)

2.1代码范例

public class Test1 {
   public static void main(String[] args) {
       InterImpl ii = new InterImpl();
       ii.show();
       ii.print();
  }
}

interface Inter {
   public abstract void show();
   public abstract void print();
}

class InterImpl implements Inter {

   @Override
   public void show() {
       System.out.println("我是实现类重写后的show方法");
  }

   @Override
   public void print() {
       System.out.println("我是实现类重写后的print方法");
  }
}

2.2成员特点

2.2.1成员变量

只能是常量, 因为默认被 public static final

细节: 这三个关键字没有顺序关系

2.2.2成员方法

只能是抽象方法, 因为默认被 public abstract 修饰

默认修饰符:public abstract

关于接口中的方法,JDK8 和 JDK9 中有一些新特性

2.2.3构造方法

没有

3类和接口之间的各种关系

3.1类和类

继承关系, 只支持单继承, 不支持多继承, 但是可以多层继承

3.2类和接口

实现关系, 可以单实现, 也可以多实现, 甚至可以继承一个类的同时, 实现多个接口

3.3接口和接口

继承关系, 可以单继承, 也可以多继承

posted @   灵泽pro  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示