Virtual Function in Java2025年3月29日 | 阅读 4 分钟 在面向对象编程语言中,虚拟函数或虚拟方法是用于在具有相同签名的继承类中重写函数行为以实现多态性的函数或方法。 当程序员将技术从 C++ 切换到 Java 时,他们会考虑 Java 中的虚拟函数在哪里。在 C++ 中,虚拟函数使用 virtual 关键字定义,但在 Java 中,它通过不同的技术实现。请参阅 C++ 中的虚拟函数。 Java 是一种面向对象编程语言;它支持多态性、抽象、继承 等 OOP 特性。这些概念基于对象、类和成员函数。 默认情况下,Java 中的所有实例方法都被视为虚拟函数,但 final、static 和 private 方法除外,因为这些方法可以用于实现多态性。 如何在 Java 中使用虚拟函数Java 中不使用 virtual 关键字来定义虚拟函数,而是通过以下技术来实现虚拟函数和方法:
总之,可用于实现多态性的方法或函数就是 Java 中的虚拟函数或方法。 让我们通过一些例子来理解它 Parent.Java Child.java 输出 Inside the Child Class 从上面的例子中,我们通过在 Child 类中重写 v1() 函数,将其用作虚拟函数。 在 Java 中,每个非静态、非 final、公共方法都是虚拟函数。这些方法可用于实现多态性。不能用于实现多态性的方法永远不是虚拟函数。 静态、final 和私有方法永远不是虚拟函数。我们不能通过对象名或类名调用静态方法。即使我们尝试,它也无法实现多态性。 Java 接口作为虚拟函数Java 中的接口是类的蓝图;它包含静态常量和抽象方法。所有 Java 接口都被视为虚拟函数,因为它们依赖于实现类来提供方法实现。 请看下面的例子来理解接口的行为 输出 BMW X7 从上面的例子中,我们可以看到接口的方法是通过实现类 BMW 执行的。 因此,我们也可以通过接口实现多态性。 纯虚拟函数没有实现要求的虚拟函数被认为是纯虚拟函数。例如,Java 中的抽象方法是纯虚拟函数。请看下面的例子 输出 MyPet is so sweet 从上面的例子中,jump() 方法是一个纯虚拟函数。 运行时多态运行时多态性是一种在运行时而不是编译时解析对重写方法的调用的过程。 在运行时多态性中,我们将使用引用变量来调用方法,而不是值。 虚拟函数可用于实现运行时多态性。 请看下面的例子,了解虚拟函数如何用于实现运行时多态性 输出 Best Java Training Institute 从上面的例子中,我们使用虚拟函数实现了运行时多态性。 总结以下是关于 Java 中虚拟函数的一些注意事项:
|
java.nio.DoubleBuffer 包含 hasArray() 函数。DoubleBuffer 类用于验证提供的缓冲区是否由可访问的浮点数组支持。如果可以访问该缓冲区的后备数组,它将返回 true;否则,它将返回 false。array() 和 arrayOffset()...
阅读 3 分钟
Java vs Kotlin Java 和 Kotlin 都是面向对象编程语言。但两者用于不同目的。Kotlin 用于开发 Android 应用程序,而 Java 主要用于开发企业应用程序。在本节中,我们讨论了 Java 和 Kotlin 之间的区别。Java Java 是...
5 分钟阅读
JSON 是一种数据交换格式。它是一种广泛使用、轻量级且与语言无关的格式。它能够将数据从 JSON 转换为 XML。Java 提供了大量的 JSON 包。借助这些包,我们可以从 JSONObject 检索或获取值。
阅读 4 分钟
Iccanobif 数字类似于斐波那契数字。与斐波那契数字类似,当前的 Iccanobif 系列数字取决于前两个 Iccanobif 数字。但是,主要区别在于,与斐波那契数字不同,需要先反转最后两个数字,然后再相加...
5 分钟阅读
JavaTuples 库中的 KeyValue 类是一个专门的 Tuple,包含两个元素:一个键和一个值。它提供了一种比通用索引 Tuple 更有意义和自解释的方式来表示键值对。作为一个 Tuple,`KeyValue` 类拥有所有特征和...
11 分钟阅读
在 Java 中,堆是所有线程共享的一块内存。在堆中,分配所有类实例和数组。它在 JVM 启动时创建。自动存储管理系统会回收堆。它可以是固定和可变的...
阅读 4 分钟
在 Java 中,并发中使用原子变量和操作。多线程环境在并发统一时会导致问题。共享实体,如对象和变量,可能在程序执行期间被更改。因此,它们可能导致程序不一致……
阅读 6 分钟
Set 和 List 都是 Java 中常用的集合类,提供不同的功能。在某些情况下,您可能需要将 Set 转换为 List,以执行特定操作或利用 List 接口提供的功能和方法。在本次...
5 分钟阅读
数组元素的循环排列是计算机科学中的一项基本技术,用于将元素在固定大小的数组内旋转,使每个元素向右移动一个位置,最后一个元素环绕到第一个位置。此操作在各种...
阅读 4 分钟
稀疏向量构成许多应用(如科学计算、机器学习和信息检索)中的基本数据结构。当处理高维数据,其中大部分元素为零时,它们特别有用。本文提供了关于创建...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India