首页 > 其他分享 >接口与抽象类的区别

接口与抽象类的区别

时间:2023-06-10 23:12:00浏览次数:40  
标签:区别 实现 接口 抽象 抽象类 方法 public

抽象类

首先抽象类我们可以望文生义,是一个抽象的类,本质仍是类,那么他就应该具有类的特征,但是既然把他单独拎出来说明他肯定还有一些特殊性。
1、继承了抽象类的类,要么本身也是抽象类,要么就实现类。
2、抽象类也可以拥有普通方法
3、抽象类不能创造对象

接口

接口是对行为的抽象,里面的方法只能是抽象方法
1、不能实例化
2、没有构造方法
3、方法默认public abstract修饰
4、变量默认public static final修饰
抽象类和接口的区别:
1、接口只有定义,不能有方法的实现,java 1.8中可以定义default方法体,而抽象类可以有定义与实现,方法可在抽象类中实现。
2、接口没有构造方法,而抽象类有构造方法,其方法一般给子类使用
3、抽象体现出了继承关系,继承只能单继承。接口提现出来了实现的关系,实现可以多实现。接口强调特定功能的实现,而抽象类强调所属关系。
4、接口只有定义,不能有方法的实现
5、接口成员变量默认为public static final,必须赋初值,不能被修改;其所有的成员方法都是public abstract的。抽象类中成员变量默认default,可在子类中被重新定义,也可被重新赋值;抽象方法被abstract修饰,不能被private、static、synchronized和native等修饰,必须以分号结尾,不带花括号。

标签:区别,实现,接口,抽象,抽象类,方法,public
From: https://www.cnblogs.com/cxy8/p/17470548.html

相关文章

  • ESXi虚拟化的坑-细微区别下虚拟机性能差异巨大
    ESXi虚拟化的坑-细微区别下虚拟机性能差异巨大背景周末在公司无偿加班.同组的小伙伴周一有一个需求,我想着周六乘着机器压力不大进行一下虚拟机的clone但是截止到晚上快十点都没有完全Clone完.我感觉非常不对.然后突然想是不是硬件的bug导致性能有差异.想着最近总是在......
  • Vue 中const,var,let区别与用法
    区别:1.const定义的变量不可以修改,而且必须初始化。2.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。3.let是块级作用域,函数内部使用let定义后,对函数外部无影响。......
  • 基于XC7Z100+OV5640(DSP接口)YOLO人脸识别前向推理过程(部分3)
    基于ZYNQ的摄像头显示系统本文介绍了如何使用ZYNQ开发板、OV5640摄像头和HDMI显示器搭建一个摄像头显示系统本文的内容主要分为以下几个部分:硬件介绍Vivado工程创建Vitis工程创建实验结果展示硬件介绍ZYNQ开发板使用的是ZINC7100芯片,具有双核ARMCortex-A9处理器......
  • Collection 接口及其常用方法
    Collection接口及其常用方法Collection接口的特点Collection接口没有直接实现类,提供了更具体的子接口(如Set和List)的实现。Collection实现类(通常通过其中一个子接口间接实现Collection)可以存放多个Object类型的元素。有些Collection接口的实现类可以存放重复的元素(List),有些则......
  • 9.9 接口定义标准
    interfaceIUSB{publicbooleancheck();publicvoidwork();}classComputer{publicvoidplugin(IUSBusb){//电脑上使用USB设备---??什么格式if(usb.check()){usb.work();}else{System.out.println("硬件设......
  • 【阿里巴巴中国站API接口系列】获得1688商品详情信息-item_get-获得1688商品详情调用
    ​    1688有开放商品详情API接口,使用前需要注册成为开发者并申请API权限。以下是简单的API使用步骤:1. 获取授权key和secret:在开放平台注册获取key和secret接入。2. 构建请求:通过API接口文档构建请求,包括传递必要参数和权限设置等。3. 发送请求:使用HTTP GET或POS......
  • Python数据分析库pandas高级接口dt和str的使用
    Series对象和DataFrame的列数据提供了cat、dt、str三种属性接口(accessors),分别对应分类数据、日期时间数据和字符串数据,通过这几个接口可以快速实现特定的功能,非常快捷。本文重点介绍和演示dt和str的用法。DataFrame数据中的日期时间列支持dt接口,该接口提供了dayofweek、dayofyear、......
  • fit、transform、fit_transform的区别和联系
    1.来源fit和transform没有任何关系,仅仅是数据处理的两个不同环节,之所以出来fit_transform这个函数名,仅仅是为了写代码方便,会高效一点。sklearn里的封装好的各种算法使用前都要fit,fit相对于整个代码而言,为后续API服务。fit之后,然后调用各种API方法,transform只是其中一个API方法,所......
  • 9.8 接口定义加强
    default,static不可作为主要的设计模式,这个只是补救措施。demo1接口中追加普通方法接口定义方法加上default,子类实现就不是非得覆写了interfaceIMessage{publicStringmessage();//抽象方法,abstract省略,获取消息内容publicdefaultbooleanconnect(){//加上......
  • Jmeter接口自动化01_Jmeter简介与环境安装
    1JMeter简介越来越多的测试人员选择JMeter主要有以下几点原因:JMeter是基于Java的开源工具,扩展性强,可自定义开发插件;JMeter社区活跃,会定期更新、修改bug、优化功能;JMeter学习成本低,提供了方便的图形界面来编辑和开发测试脚本,上手快;JMeter可以和很多工具兼容,如Jenkins,方便测......