java接口的静态方法

news/2024/11/17 20:18:55/

目前java接口中已经支持定义静态方法 但需要注意一个点

我们先把代码写出来

我们创建一个包

下面创建一个接口 subInterface 接口参考代码如下

public interface subInterface {static void show2() {System.out.println("来自接口的静态方法");}
}

这里 我们就将 show2 定义成了一个静态的方法

然后 我们可以定义一个实现类来实现这个接口

public class realizationMethod implements subInterface {
}

这里 大家就可以看出 我们静态方法 因为是有方法体的 所以也是可以不用重写的 当然 接口的静态方法 你也不需要重写 重写你也用不了

然后 我们定义一个测试类 来调用接口方法

public static void main(String args[]) {subInterface real = new realizationMethod();
}

这里 我们通过realizationMethod类创建了一个subInterface接口的对象

然后 我们试着调用show2
在这里插入图片描述
可以看到 我们这里是报错了 可能就会有人说 让realizationMethod类重写一下subInterface 的show2

但重写之后 还是会报错的

这里 我们要直接通过接口名来调用静态方法

测试类代码修改如下

public static void main(String args[]) {subInterface real = new realizationMethod();subInterface.show2();
}

运行结果如下
在这里插入图片描述

因为 比如 你有 A B两个接口 他们都写了一个静态方法 然后 C类继承了两个接口 然后 C类调用了 A B接口都有点那个静态方法 那么计算机就蒙了 你调的到底是 A的还是B的静态方法呢?

所以 为了避免争议 java直接封了实现类调用接口静态方法的写法 你想用接口的静态方法 就要用接口名去调


http://www.ppmy.cn/news/8399.html

相关文章

串口通信协议

同步通信和异步通信 同步通信:需要时钟信号的约束,在时钟信号的驱动下两方进行数据交换,一般会选择在上升沿或者下降沿进行数据的采样,以及时钟极性和时钟相位【eg.SPI,IIC】。 异步通信:不需要时钟信号的同步,通过(…

Go 并发

来自 《Go 语言从入门到实战》 的并发章节学习笔记,欢迎阅读斧正,感觉该专栏整体来说对有些后端编程经验的来说比无后端编程经验的人更友好。。 Thread VS Groutine 创建时默认 Stack 大小:前者默认 1M,Groutint 的 Stack 初始化…

uniCloud云开发----4、uniCloud云开发进阶使用方法

uniCloud云开发进阶使用方法前言1、云对象的importObject的创建和使用(1)创建云对象(2)编辑云对象(3)在.vue文件中调用云对象(4)在.vue文件中调用方法2、客户端直接连接数据库(1)直接在客户端引…

Threejs实现鼠标点击人物行走/镜头跟随人物移动/鼠标点击动画/游戏第三人称/行走动作

1,功能介绍 Threejs获取鼠标点击位置、实现鼠标点击人物行走、人物头顶显示名称标签、镜头跟随人物移动并且镜头围绕人物旋转,类似游戏中第三人称、鼠标点击位置有动画效果,如下效果图 2,功能实现 获取鼠标点击位置,…

《Nuitka打包实战指南》实战打包OpenCV-Python

实战打包OpenCV-Python 打包时解决掉的问题: ModuleNotFoundError: No Module named cv2ImportError: numpy.core.multiarray failed to import打包示例源码: 请看文章末尾 版本信息: opencv-python==4.5.1.48 numpy==1.23.2 Nuitka==0.6.19.1 打包系统: Windows10 64…

【Python】sklearn机器学习之Birch聚类算法

文章目录基本原理sklearn调用基本原理 BIRCH,即Balanced Iterative Reducing and Clustering Using Hierarchies,利用分层的平衡迭代规约和聚类,特点是扫描一次数据就可以实现聚类, 而根据经验,一般这种一遍成功的算…

AlphaGo简易版MuGo源码解析

文章目录前言源码实现MuGo的输入数据模型的搭建模型的训练参考链接结语前言 自从AlphaGo横空出世,战胜李世石后,AI围棋如雨后春笋一般遍地开花。阅读DeepMind的论文有时还是隔靴搔痒,只有钻到代码里,才能一探究竟。于是&#xff…

Spring 核心概念 IOC/DI IOC容器 Bean

目录 一:代码书写现状 二:核心思想 一:代码书写现状 常规操作如上,但存在着问题,将项目上线后,需要将数据层进行更换,更换如下: 数据层更换后,业务层也需要进行更换,更换如下: 数据…