• java:接口


    一、接口

    1、接口是什么?

    接口是数据传递的通道。

    我的理解:接口可以理解为一种特殊的类,里面全部是由全局常量公共的抽象方法所组成。

    即:接口就是一个由全局常量和抽象方法组成的类,反过来讲:将一些抽象方法和必要的全局常量打包成一个类,这个类就是接口

    2、接口的创建

    interface 接口名{

    接口的体;//包括抽象方法1.。。

    }

    1. package interface01;
    2. interface Usb{ //创建接口(接口本质上就是一个特殊的类)
    3. public void start();
    4. public void stop();
    5. }

    3、接口的使用

    class 类名 implements 接口名(列表) {

    类的体;\\包括抽象方法1的实现。。。

    }

    (1)、接口的实现

    1. package interface01;
    2. class Camera implements Usb{//接口的实现类似于抽象类的实现
    3. @Override
    4. public void start(){
    5. System.out.println("我是相机,开始工作了!!");
    6. }
    7. @Override
    8. public void stop(){
    9. System.out.println("我是相机,停止工作了!!");
    10. }
    11. }

    (2)、接口的调用

    1. package interface01;
    2. class Computer { //在类中创建一个调用接口的方法
    3. public void working(Usb usb){
    4. usb.start();
    5. usb.stop();
    6. }
    7. }
    1. package interface01;
    2. public class Interf1 {
    3. public static void main(String[] args) {//创建手机,相机对象
    4. Camera camera = new Camera();
    5. Phone phone = new Phone();
    6. //创建计算机
    7. Computer computer = new Computer();
    8. computer.working(phone);
    9. computer.working(camera);
    10. }
    11. }

    4、接口中有什么?

    java8以后,接口的体中可以有静态方法或者默认方法

    (可以说java8作为第一个长期支持版本,很多东西都是在java8确定下来的。不知道就填java8)

    5、接口中的抽象方法

    (1)、接口不能被实例化,但接口中的方法可以

    (2)、接口中的抽象方法可以省略abstract;所有的方法都要用public修饰

    6、接口的实现

    抽象类实现接口时,可以不全部实现接口的所有方法;

    普通类实现接口时,必须全部实现接口的所有方法。

    注:这点可以联系之前关于抽象类中方法的实现来理解

    7、接口中的属性

    类型:只能是 public static final属性(常量):只是被省略了。

    被调用:接口名。属性名

    8、接口的继承(之前曾经说过java是单继承机制,但接口的继承不是继承(确信))

    接口是多继承机制,可以继承多个接口

    9、接口也有修饰符,修饰符同类

    10、接口的多态特征

    (1)、接口参数的多态

    实现了接口的类可以当成接口的子类使用

    (2)、接口的多态数组

    (3)、接口的多态传递

    接口类型的变量可以指向实现了该接口的类的对象实例

  • 相关阅读:
    java毕业设计开题报告springboot+mysql实现的电影资讯网站|影视[包运行成功]
    Linux教程:如何安装redis服务并搭建三主三从集群部署环境
    2023,DaaS驶入“AI大航海时代”
    windows中MySQL主从配置【第一篇】
    uni-app使用uView打开弹出层后输入框聚焦时placeholder错位问题
    java基础 异常
    【国庆活动】关于Spring Beans 的理解
    TypeScript(零) —— 简介、环境搭建、第一个实例
    day05 51单片机-外部中断、定时器
    思腾云计算
  • 原文地址:https://blog.csdn.net/qq_48843954/article/details/126386979