Java 8中默认接口方法和静态接口方法的区别
根据 Oracle 的 Javadocs -
默认方法使您能够向库的接口添加新功能,并确保与为这些接口的旧版本编写的代码的二进制兼容性。
静态方法是与定义它的类相关联的方法,而不是与任何对象相关联的方法。类的每个实例共享其静态方法。
接口中的静态方法是接口的一部分,类不能实现或重写它,而类可以重写默认方法。
先生。否 | 按键 | 静态接口方法 | 默认方法|
---|---|---|---|
1 | 基本 | 静态方法,仅属于接口。我们可以在接口本身中编写该方法的实现 | 这是一个带有default关键字的方法,类可以重写该方法 | tr>
2 | 方法调用 | 静态方法只能在接口类上调用,不能在类上调用。 | 它可以在接口上调用,也可以在类上调用 |
3 | 方法名称 | 接口和实现类,两者可以有同名的静态方法,且不会互相覆盖。 | 我们可以重写实现类中的默认方法 |
4. | 用例 | 它可以用作实用方法 | 它可用于在所有实现类中提供通用功能 |
接口中默认方法和静态方法示例
public interface DefaultStaticExampleInterface { default void show() { System.out.println("In Java 8- default method - DefaultStaticExampleInterface"); } static void display() { System.out.println("In DefaultStaticExampleInterface I"); } } public class DefaultStaticExampleClass implements DefaultStaticExampleInterface { } public class Main { static void main(String args[]) { // Call interface static method on Interface DefaultStaticExampleInterface.display(); DefaultStaticExampleClass defaultStaticExampleClass = new DefaultStaticExampleClass(); // Call default method on Class defaultStaticExampleClass.show(); } }
登录后复制
以上是Java 8中默认接口方法和静态接口方法的区别的详细内容。更多信息请关注PHP中文网其他相关文章!
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
刺客信条阴影:贝壳谜语解决方案
2 周前
By DDD
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前
By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Java的类上载涉及使用带有引导,扩展程序和应用程序类负载器的分层系统加载,链接和初始化类。父代授权模型确保首先加载核心类别,从而影响自定义类LOA

本文讨论了使用咖啡因和Guava缓存在Java中实施多层缓存以提高应用程序性能。它涵盖设置,集成和绩效优势,以及配置和驱逐政策管理最佳PRA

本文讨论了使用JPA进行对象相关映射,并具有高级功能,例如缓存和懒惰加载。它涵盖了设置,实体映射和优化性能的最佳实践,同时突出潜在的陷阱。[159个字符]

本文讨论了使用Maven和Gradle进行Java项目管理,构建自动化和依赖性解决方案,以比较其方法和优化策略。

本文使用Maven和Gradle之类的工具讨论了具有适当的版本控制和依赖关系管理的自定义Java库(JAR文件)的创建和使用。
