java接口基本概念

数据库decimal类型详解:精度、标度与金额计算避坑指南 在关系型数据库中,浮点数精度丢失是常见问题,尤其涉及金额计算时,一分钱误差都可能导致对账失败。decimal类型通过十进制存储方式,将小数当作定点数处理,避免了二进制转换误差,确保运算结果精确。其核心在于精度和标度的合理定义,以及运算舍入规则的控制。在电商订单、汇率转换、税务计算等场景中,decimal是保障数据准确性的关键技术。理解其存储原理和实操细节,能有效规避隐式转换、聚合函数精度等常见坑点,提升系统可靠性。 阅读详情

接口

接口(interface)是一种特殊的抽象类,本质上不是一个类,里面只能包含常量和方法的定义(不允许实现),接口就是一套未实现方法的集合。

声明语法

[修饰符] 接口名称{

​ [常量定义]

​ [抽象方法的定义]

}

例如

public interface Flyable{
//public static final String NAME = “bird”;
String NAME = “bird”;

//public abstract void fly();
void fly();

}
从以上表现来看,接口中不存在像普通类一样的属性,以及普通方法,因此接口实际上就是一套标准,既然是标准,那就必然存在实现,java中的类可以实现多个接口,从而弥补了类只能单继承的缺点。

实现类

public class Bird implements Flyable{

public void fly(){
    System.out.println("自由自在的飞翔");
}

}
并且接口也允许有多个子类实现

实现类2

public class plane implements Flayble{
public void fly(){
System.out.println(“从北京飞武汉”);
}
}
同时java中的类可以实现多个接口****

接口2

public interface Singable{
void sing();
}
实现类3

public class Bird implements Flyable,Sinable{
public void fly(){

}
public void sing(){
    
}

}
如果一个子类实现了多个接口,那么这个子类就必须实现所有的抽象方法(除非这个子类是抽象类).

注意事项:

接口中只能存在常量和抽象方法(JDK1.8以前)
接口允许继承接口,并且能多继承
接口不允许继承任何类(包括抽象类)
接口允许有多个子类实现,并且子类可以同时实现多个接口
接口不属于类,因此不存在构造器,所以也无法实例化
接口(标准)和抽象类(类)的区别

接口通常表示对行为(动词,或形容词)的抽象;抽象类一般为对具备相同的属性的类(名词)的抽象
接口中只允许常量和抽象方法;抽象类中具备普通的类所有特征,同时也支持抽象方法
接口允许多实现,接口允许继承多个接口;抽象类只能单继承
接口不存在构造器,无法实例化;抽象类虽然存在构造器,但是也无法实例
JDK8基于接口的新特性

JDK版本更新迭代后新版本的JDK中对于接口新增很多新特性,比如:接口默认方法,静态方法,函数式接口等。

默认方法

某些情况下,可能实现类只需要对于接口中的部分方法实现而非所有方法,因此在这种需求下JDK新增了默认方法的设定,将一些实现类只需选择性实现的方法定义为default方法,这样一来,这些子类(实现类)就可以不一定实现,例如:

public interface CategoryManage {

boolean add(Category c);

//JDK8默认方法
default boolean updateCname(Category c){
	return false;
}

//JDK8默认方法
default boolean delete(int cid){
	return false;
}

ArrayList<Category> findAll();

Category findById(int cid);

}

以上接口中updateCname和delete方法为默认方法,因此,子类可以无需实现这两个方法,如下:

public class CategoryManageImpl implements CategoryManage{

@Override
public boolean add(Category c) {
	// TODO Auto-generated method stub
	return false;
}

@Override
public ArrayList<Category> findAll() {
	// TODO Auto-generated method stub
	return null;
}

@Override
public Category findById(int cid) {
	// TODO Auto-generated method stub
	return null;
}

}

这种操作,是JDK中一种兼容性的解决方案。

####接口静态方法

JDK中除了对接口新增默认方法外,还新增接口的静态方法,即在接口直接将方法定义为静态的已实现方法,这样一来,就无需创建接口的实现类来调用,直接通过接口名.方法()即可调用,大大提高方法调用的便利性.

public interface CategoryManage {

boolean add(Category c);

//JDK8接口静态方法:该方法可以直接通过接口名调用(无需创建对象)
static String showMsg(){
	return "HelloInterface";
}

ArrayList<Category> findAll();

Category findById(int cid);

}

函数式接口(@FunctionalInterface)与lambda表达式

所谓函数式接口是JDK8中新增的一种概念,表名一个接口中只存在一个未实现方法(可以包含默认方法,静态方法和从Object中继承的方法)

@FunctionalInterface
public interface Flyable {

void fly();

}

@FunctionalInterface是注解,用于检查接口是否只包含一个未实现的方法。
**lambda表达式 **

public class Test{
public static void main(String[] args){
Flyable f = ()->{};
}
}
实际应用

public class TestLambda {
public static void main(String[] args) {
//ArrayList
List list = Arrays.asList(“Tom”,“Jarray”,“Lily”,“Lilei”,“Hanmeimei”);
//lambda表达式实际使用
list.forEach(n->System.out.println(n));
}
}
注意事项:

lambda表达式只能适用函数式接口

龙腾CMS downloadFile接口任意文件读取漏洞复现 [附POC] 大连网龙网络科技有限公司专注于在信息科技领域中向客户提供商业解决方案,是专业的互联网服务解决方案提供商和网络营销服务专家,为用户提供一体化的网络营销整体解决方案,龙腾CMS downloadFile接口存在任意文件读取漏洞。 阅读详情

相关推荐

比例导引算法详解:从理论到Matlab实现(含3D轨迹可视化)

本文深入解析比例导引算法(PNG)的数学原理与Matlab实现,涵盖3D轨迹可视化技术。从基础运动学模型到导航比优化,详细讲解导弹拦截系统的核心算法,并提供Matlab代码示例,帮助读者掌握从理论到实战的全流程。

weixin_33725722的博客 549

Java接口介绍

Java接口介绍

cnds123的专栏 6077

在Rviz仿真环境中搭建传送带

<geometry><material>

qq_58268456的博客 937

Java 接口

Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。 除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。...

aldsot0997的博客 822

SAP SD信贷管理实战:从配置到风险控制的完整指南(附后台路径)

本文详细解析了SAP SD信贷管理的完整配置流程与风险控制策略,涵盖信贷控制范围设置、风险分级机制及动态控制配置。通过实战案例和后台路径指引,帮助企业实现从客户信用评估到实时监控的全流程管理,有效降低坏账风险并优化资金安全。

3a9bq4r8t2y的博客 213

RFSoC应用XCZU47DR八发八收FPGA设计方案

本文介绍了基于Xilinx XCZU47DR RFSoC芯片的八发八收FPGA设计方案。该方案采用集成射频数据转换器的SoC架构,支持8路14bit ADC(5GSPS)和8路14bit DAC(9.85GSPS),可直接处理5GHz以下射频信号。硬件设计包含高性能输入缓冲器、QMC校正和复杂混频器,适用于5G/6G通信、雷达、卫星通信等领域。文章详细阐述了ADC/DAC子系统参数,包括通道配置、采样率、带宽等特性,并提供了FPGA顶层模块的硬件接口设计,展示了多通道数据收发处理能力。该方案无需外置混频器,

toonyhe的博客 1792

Java 接口的概念

Java中 接口的概念

qq_47381208的博客 525

用朴素贝叶斯分类模型判断病人是否感染幽门螺杆菌(Python实现)

朴素贝叶斯,Python

weixin_56529327的博客 1161

【Java】接口的详解

一、前言 前面我们说了抽象类的概述,我们对抽象类也有个认识和理解了,现在我们学习 十分重要的内容接口,接口这个词比较的抽象,但其实也是十分好理解的。 二、接口 简单的说,接口就是一种被规范的标准,只要符合这个标准都可以通用,接口的表现 在于对行为的抽象。 ...

weixin_60719453的博客 3万+

西电微机系统课程设计步进电机开环控制系统

** 微机系统与应用课程设计 课题二 步进电机开环控制系统设计** 一、程设计目的 掌握微机系统总线与各芯片管脚连接方法,提高接口扩展硬件电路的连接能力。 加深对 A/D 和并行接口芯片的工作方式和编程方法的理解。 搞懂步进电机的工作原理及控制方式,掌握开环控制系统的设计思路和实现方法。 二、课程设计的内容 手动调节电位器旋钮(0V~5V),通过 ADC0809 模拟输入水库水位 0 米~50...

qq_37015775的博客 4040

【NodeRed】node-red-contrib-opcua实现PLC读写

在之前的博文【Node-RED】node-red-contrib-opcua-server模块使用(1)中,我们介绍了用node-red-contrib-opcua-server模块实现OPCUA服务端的,以及二次开发的内容。本节博文中我们采用官方社区自带的node-red-contrib-opcua组件开展对OPCUA客户端的介绍,详细阐述用该组件中OpcUa-Client节点实现客户端对PLC的读写,以及实现过程中遇到的问题。由于官方社区中并没有找到该组件的介绍实例,这也是本博文编写的第1个原因。

weixin_48618536的博客 960

java 接口 详解

java 接口 内容分享,本篇博文为java 面向对象三大特性——多态篇的补充。

优快云 / 稀土掘金/ B站 / GitHub: Cyan_RA9 3万+

CVPR 2026 即插即用 | 注意力篇 | MSEF:超轻注意力,空间-通道双分支并行融合,既增强特征又抑制噪声!

Multinex提出了一种超轻量级微光图像增强框架,其核心创新是MSEF模块。MSEF采用双分支并行架构,结合空间局部特征(深度可分离卷积)和全局通道注意力(改进SE),通过Tanh激活实现特征增强与抑制。相比传统注意力模块,MSEF在几乎不增加计算量的情况下显著提升性能,特别适合轻量级网络和边缘设备部署。实验表明,该模块能有效提升PSNR约3dB,同时保持极低的参数量(0.7K-45K)。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 605

java中接口interface的基本概念

java中接口interface的基本概念

yyyfff43的专栏 446

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Java入门——抽象类和接口的基本概念

Java入门——抽象类和接口的基本概念 本blog内容: 抽象类的基本概念(重点) 接口的基本概念(重点) 对象的多态性(重点) instanceof关键字 开始本blog时间: 2016-09-16 16:21:09 抽象类的基本概念(重点)    包含一个抽象方法的类一定是抽象类   抽象类和抽象方法都要使用abstract关键字定义   ...

151

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

【Java】多线程:基本概念、线程创建(Thread类、Runnable接口【常用】、Callable 接口)

案例:多线程同步下载图片(commons-io包);多人抢票系统;龟兔赛跑

一亿少女的梦 943

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Java核心技术之面向对象07接口的基本概念

       

green_4321的博客 147

java中接口的基本概念

Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。 除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。 接口无法被实例化,但是可以被实...

qq_39581763的博客 258

java学习之接口的基本概念

1. 接口是java中最重要的概念,可以将接口理解为一种特殊的类,里面全部是由全局变量和公共的抽象方法做组成, 可以说如果一个类由全局常量(static final声明)和抽象方法组成,就可以将其定义为一个接口。 2.接口的定义格式:   interface 接口名称{         全局常量;         抽象方法;    }  3. 对于接口来讲,因为其在定义的时候已经定义...

好大一只猫呀 537

java 接口的本质_Java基本概念:接口

一、简介描述:普通类只有具体实现,抽象类具体实现和规范都有,接口只有规范!接口就是比抽象类还抽象的抽象类,可以更加规范的对子类进行约束,全面专业地实现了规范和具体实现的分离。抽象类还提供某些具体实现,接口不提供任何实现,接口中所有方法都是抽象方法。接口是完全面向规范的,规定了一批类具有的公共方法规范。从接口的实现者角度看,接口定义了可以向外部提供的服务。从接口的调用者角度看,接口定义了实现者能提供...

weixin_33873270的博客 478

java中Runnable接口是什么?基本概念、工作原理、优点、`Runnable`与`Thread`的对比、与`Callable`接口的对比、实际场景

`Runnable`接口是Java提供的一种用于实现多线程的接口,通常用来定义任务的具体逻辑。与`Thread`类不同,`Runnable`接口只提供一种抽象方法`run()`,没有任何与线程的生命周期、管理相关的功能。它的主要作用是与`Thread`类或线程池(如`ExecutorService`)配合,作为线程的任务载体,使任务与线程的执行分离,从而提高代码的灵活性和可维护性。

开源AI 专属 UI——papyrai-ui。《千界明彻录》(故事形式构建元思维)——胡说小说。更多思辨内容在公众号。 8954

java接口基本概念及实现

接口可以认为是特殊的类:由全局常量(static final)和公共的抽象方法所组成 一、定义接口//接口定义的两种方式 interface A { public static final String AUTHOR = "wangbign"; public abstract void print(); public abstract String getInfo(); } inte

qq_27862335的博客 288

Java中接口的定义与使用(接口的基本概念、接口的限制、接口的应用)

文章目录1 接口1.1 接口的基本概念3.2 接口的限制3.2.1 接口中只允许public权限3.2.2 实现接口&amp;amp;amp;继承抽象类 1 接口   抽象类与普通类相比最大的特点是约定了子类的实现要求,但是抽象类存在单继承局限。如果要约定子类的实现要求并避免单继承局限就需要使用接口。   在以后的开发中:接口优先(在一个操作即可以使用抽象类又可以使用接口的时候优先考虑使用接口) 1.1 接口的基...

zhao_miao的博客 1944

Java接口基本概念以及抽象类的异同

接口的语法 接口相当于特殊的抽象类,定义方式与抽象类类似

VIf_LL的博客 272

java接口的基本概念

转载:https://blog.youkuaiyun.com/liuchonghua/article/details/80013079 接口的概念     在Java中接口是一个全部由抽象方法组成的集合,接口需要用interface定义,里面只能有抽象的方法和常量。接口体现的是事物扩展的功能,在Java中,类定义了一个实体,包括实体的属性,实体的行为。而接口定义了一个实体可能发生的动作,只有一个声明,没有...

zj15939317693的博客 408

Java的接口的基本概念与使用

Java中的接口 1、概念:接口是一种能力与约定。接口的定义:代表了某种能力。方法的定义:能力的具体实现。 2、书写格式:使用 interface 关键字定义接口,接口中定义的方法和属性都是,公开抽象方法,公开静态常量。 3、接口可以多实现,弥补了Java单继承的缺陷。可以为类扩充多种能力。 interface MyInterface{ //实际使用中写成String filed = "value"; 前缀是默认有的 public static final String filed = "value";

ZChiChi88的博客 400
上一篇: JAVA设计案例(单例)
下一篇: java中使用插件的中文排序
RequirementJava
博客等级 码龄7年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值