首页 > 其他分享 >接口

接口

时间:2023-10-29 16:31:56浏览次数:35  
标签:usb 继承 void 接口 Override public

接口

什么是接口

  • 硬件接口:两个设备之间的连接方式,包含数据传输协议
  • 软件接口:程序代码,包含一种规范

统一接口以后的意义:根据规范·设计产品,可以做到适配性

Java接口

定义:使用interface关键字
   //把class 替换成 interface 
/***
 * 接口的定义
 */
public interface InterfaceDemo {
    void usb()
}

注意:

  • 接口里面只能定义抽象方法,不能定义实例方法

  • 抽象方法默认提供了public abstract 修饰符

  • 接口不能实例化 没有构造方法(和抽象类一样)

怎么去实现接口

用 implments 关键字修饰
//接口单实现
public class InterfaceClass implements InterfaceDemo{
    @Override
    public void usb() {
    }

    @Override
    public void usb1() {
    }
    @Override
    public void usb(String name) {
    }
}

//接口多实现(多个接口用逗号隔开)
public class ImplementsDemo implements InterfaceDemo1,InterfaceDemo2{
    @Override
    public void usb() {
        
    }

    @Override
    public void typec() {

    }
}

**注意:**多实现分别把每个接口的抽象方法都实现了

接口的多继承

注意:

  • 类和接口之间只能使用implement实现关键字,不能使用extends继承关键字
  • 接口和接口之间可以使用extends继承关键字
  • 当接口继承接口时,实现类只需要去实现最终接口就行
//接口和类
public class ImplementsDemo implements InterfaceDemo1,InterfaceDemo2{
    @Override
    public void usb() {
    }
    @Override
    public void typec() {
    }
}

//接口继承0   接口
public interface InterfaceDemo3 extends InterfaceDemo1,InterfaceDemo2{

}

//当接口继承接口时,实现类只需要去实现最终接口就行
public class ImplementDemo1 implements InterfaceDemo3{
    @Override
    public void say() {        
    }
    @Override
    public void usb() {
    }
    @Override
    public void typec() {
    }
}

疑问

  • 接口可以多继承,类可以多继承吗?

    答:不可以,类与类之间只能单继承,不能多继承,但是可以无限制的继承

  • 类继承类,类又可以实现接口

  • 不管继承多少代,父亲的方法儿子永远能够使用

  • 抽象类可以不用实现接口的抽象方法

接口和抽象的选择( 都可以使用 )

  • 抽象类,接口都属于顶层
  • 抽象类有抽象方法,实例方法
  • 接口可以定义规范

标签:usb,继承,void,接口,Override,public
From: https://blog.51cto.com/u_16079786/8080902

相关文章

  • 解决使用mitmprox抓包可以访问网页,但是使用python request 调用该网站接口报错问题
    可能有几种原因导致这种情况。以下是一些常见的问题和可能的解决方法:证书验证问题:当你使用mitmproxy抓包时,它通常会生成自签名的SSL证书,以便进行中间人攻击检查。但在Python中使用requests库时,默认情况下,它会验证SSL证书的有效性。你需要禁用SSL验证,以便使用mitmproxy生成的证书......
  • 安全运营之API接口暴露探测
    说明:本文所有操作仅为作者的学习记录,严禁用于非法测试! 一、背景在安全运营之暴露资产探测一文中作者分享了一种快速探测暴露资产的思路,可以快速的找到IP地址暴露在互联网上的端口服务。但是如果这些端口中暴露了一些高危的API服务,那就还要做进一步的检测,因此在本文中作者将继续说......
  • vue中使用axios请求post接口为什么先发起OPTIONS请求再发起post请求?
    在使用Axios进行跨域POST请求时,浏览器会先发起一个OPTIONS请求,这是因为浏览器执行了跨域请求时的预检请求(PreflightRequest)。这是一个安全性措施,旨在确保跨域请求不会导致安全风险。1、跨域请求的安全性:当前端应用和后端API位于不同的域或端口时,浏览器会执行同源策略,以防止跨站点......
  • 微机原理与接口技术中断实验
    ;*******************************;;*中断实验IRQ3*;;*******************************;includeio.inc.modelsmall;定义程序的存储模式.stack;定义堆栈段(默认是1KB空间).datamsgbyte'TPCAinterruptNo.3!',0dh,0ah,0c......
  • 微机原理与接口技术-第八章常用接口技术
    目录定时控制接口8253/8254定时器定时器的应用并行接口并行接口电路8255内部引脚工作方式工作方式0:基本输入输出方式工作方式1:选通输入输出方式编程并行接口的应用用8255方式0与打印机接口数码管及其接口数码管的工作原理单个数码管的显示多个数码管的显示异步串行通讯接口模拟接......
  • 原生分页接口
    packagemainimport( "encoding/json" "gorm.io/driver/mysql" "gorm.io/gorm" "math" "net/http" "strconv")//封装接口返回的三要素:1状态2提示3数据typeApiResponsestruct{ Codeint`json:&......
  • json 对象属性的输出顺序测试,fastJson 有序,jackson,gson无序(需代码中人工按约定来编码
    json对象属性的输出顺序测试,fastJson有序,jackson,gson无序(需代码中人工按约定来编码)接口数据签名规则fastJson会根据对象的字段的首字母来排序。而jackson,gson是根据对象的类中定义的属性的代码中的先后顺序输出。不会排序。针对业务场景需要对接口中对象存在集合列表等,需要......
  • Python 接口自动化 —— requests框架
    1.前言Python内置的urllib模块,也可以用于访问网络资源。但是,它用起来比较麻烦,而且,缺少很多实用的高级功能。因此我们使用requests模块进行进行接口测试。requests官方文档资料地址:http://cn.python-requests.org/zh_CN/latest/2.环境安装cmd(win+R快捷键)输入:pipinstall......
  • API商品数据接口调用爬虫实战
    随着互联网的发展,越来越多的商家开始将自己的商品数据通过API接口对外开放,以供其他开发者使用。这些API接口可以提供丰富的商品数据,包括商品名称、价格、库存、图片等信息。对于爬虫开发者来说,通过调用这些API接口,可以更加便捷地获取商品数据,避免了爬取网页数据的繁琐过程。本文将......
  • API - 几种API接口模式 - RESTful、WebSocket、GraphQL、gRPC、Webhook
    总结TODO.....当思考使用哪种API接口时,你将会面临一个重要的决策。RESTful、GraphQL、gRPC、WebSocket和Webhook是当前流行的几种API接口模式。在本文中,我们将介绍这些接口的特点、用途和比较,帮助你选择最适合你应用程序需求的接口。引言随着现代应用程序的复杂性和用户期望的......