Java中重新定义静态方法意味着什么?

2024-03-15

我一直在阅读 SCJP 学习指南中有关静力学的部分,其中提到了以下内容:

静态方法不能被重写, 但它们可以被重新定义

重新定义到底意味着什么?是否存在父级和子级中都存在具有相同签名的静态方法的情况,但它们是通过类名单独引用的?例如 :

class Parent
{
   static void doSomething(String s){};
}

class Child extends Parent
{
   static void doSomething(String s){};
}

引用为:Parent.doSomething(); and Child.doSomething(); ?

另外,这同样适用于静态变量,还是仅适用于静态方法?


它只是意味着这些功能不是虚拟的。举个例子,假设您有一个(运行时)Child 类型的对象,它是从 Parent 类型的变量引用的。然后如果你调用doSomething, the doSomething调用Parent的方法:

Parent p = new Child();
p.doSomething(); //Invokes Parent.doSomething

如果方法是非静态的,doSomethingChild 的值将覆盖 Parent 的值并且child.doSomething会被调用。

这同样适用于静态字段。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java中重新定义静态方法意味着什么? 的相关文章

  • Java 中等效的并行扩展

    我在 Net 开发中使用并行扩展有一些经验 但我正在考虑在 Java 中做一些工作 这些工作将受益于易于使用的并行库 JVM 是否提供任何与并行扩展类似的工具 您应该熟悉java util concurrent http java sun
  • Grails 3.x bootRun 失败

    我正在尝试在 grails 3 1 11 中运行一个项目 但出现错误 失败 构建失败并出现异常 什么地方出了错 任务 bootRun 执行失败 进程 命令 C Program Files Java jdk1 8 0 111 bin java
  • Java new Date() 打印

    刚刚学习 Java 我知道这可能听起来很愚蠢 但我不得不问 System out print new Date 我知道参数中的任何内容都会转换为字符串 最终值是 new Date 返回对 Date 对象的引用 那么它是如何打印这个的呢 Mo
  • 如何在 Play java 中创建数据库线程池并使用该池进行数据库查询

    我目前正在使用 play java 并使用默认线程池进行数据库查询 但了解使用数据库线程池进行数据库查询可以使我的系统更加高效 目前我的代码是 import play libs Akka import scala concurrent Ex
  • 在画布上绘图

    我正在编写一个 Android 应用程序 它可以在视图的 onDraw 事件上直接绘制到画布上 我正在绘制一些涉及单独绘制每个像素的东西 为此我使用类似的东西 for int x 0 x lt xMax x for int y 0 y lt
  • Play框架运行应用程序问题

    每当我尝试运行使用以下命令创建的新 Web 应用程序时 我都会收到以下错误Play http www playframework org Error occurred during initialization of VM Could no
  • JAXb、Hibernate 和 beans

    目前我正在开发一个使用 Spring Web 服务 hibernate 和 JAXb 的项目 1 我已经使用IDE hibernate代码生成 生成了hibernate bean 2 另外 我已经使用maven编译器生成了jaxb bean
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • Mockito when().thenReturn 不必要地调用该方法

    我正在研究继承的代码 我编写了一个应该捕获 NullPointerException 的测试 因为它试图从 null 对象调用方法 Test expected NullPointerException class public void c
  • 斯坦福 NLP - 处理文件列表时 OpenIE 内存不足

    我正在尝试使用斯坦福 CoreNLP 中的 OpenIE 工具从多个文件中提取信息 当多个文件 而不是一个 传递到输入时 它会给出内存不足错误 All files have been queued awaiting termination
  • 十进制到八进制的转换[重复]

    这个问题在这里已经有答案了 可能的重复 十进制转换错误 https stackoverflow com questions 13142977 decimal conversion error 我正在为一个类编写一个程序 并且在计算如何将八进
  • 禁止的软件包名称:java

    我尝试从数据库名称为 jaane 用户名 Hello 和密码 hello 获取数据 错误 java lang SecurityException Prohibited package name java at java lang Class
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • 编译器抱怨“缺少返回语句”,即使不可能达到缺少返回语句的条件

    在下面的方法中 编译器抱怨缺少退货声明即使该方法只有一条路径 并且它包含一个return陈述 抑制错误需要另一个return陈述 public int foo if true return 5 鉴于Java编译器可以识别无限循环 https
  • 使用 JMF 创建 RTP 流时出现问题

    我正处于一个项目的早期阶段 需要使用 RTP 广播DataStream创建自MediaLocation 我正在遵循一些示例代码 该代码目前在rptManager initalize localAddress 出现错误 无法打开本地数据端口
  • java.lang.IllegalStateException:驱动程序可执行文件的路径必须由 webdriver.chrome.driver 系统属性设置 - Similiar 不回答

    尝试学习 Selenium 我打开了类似的问题 但似乎没有任何帮助 我的代码 package seleniumPractice import org openqa selenium WebDriver import org openqa s
  • 将 List 转换为 JSON

    Hi guys 有人可以帮助我 如何将我的 HQL 查询结果转换为带有对象列表的 JSON 并通过休息服务获取它 这是我的服务方法 它返回查询结果列表 Override public List

随机推荐

  • 如何使用 JpegTran 递归处理 Windows 目录中的所有图像并覆盖它们?

    现在我有以下批处理文件用于处理图像 echo none cd 1 md 1 ProcessedJPEGS for i in jpg do C Program Files Image Optimization jpegtran exe opt
  • 使用 Gradle Release 插件进行 Android 构建

    我想用Gradle 发布插件 https github com townsfolk gradle release in Android Project 我配置了它 一切都很好 除了一件事 Gradle Release Plugin更改项目版
  • Django 模型子类的类型提示

    我有 Django 视图的辅助函数 如下所示 代码如下 它返回 None 或与给定查询匹配的单个对象 例如pk 1 from typing import Type Optional from django db models import
  • 哪个 API 允许我将 PayPal 保存为可重复使用的付款类型

    我目前正在开展一个项目 将 PayPal 实施为类似于保存的信用卡的可重复使用的付款选项 我在类似的网站上看到过这样做http www fab com http www fab com它允许用户登录 PayPal 一次 然后存储他们的付款信
  • 使用 PostgreSQL、Javascript 库或可重用函数存储和索引 YAML?

    PostgreSQL http www postgresql org 9 2 具有原生 JSON 支持 不过 我想将人类可读的配置文件存储在 YAML 中 我想我想索引一些 但不是全部 配置文件值 因此我想知道 例如 是否可以在 Postg
  • 如何将mongoDB数据导出为CSV格式?

    我正在寻找一种非常简单的方法将数据从 mongoDB 导出到 CSV 大多数答案都涉及 bash 脚本 等等 是否有一个简单的 mongoDB 命令可以将数据导出到 CSV 中 Update 从 mongo 3 0 6 开始 csv不再支持
  • 用于填写 PDF 表单的 Android 应用程序

    我想为 PDF 表单设计一个应用程序 只是为了通过 Android 应用程序自动填充它 我想向用户展示一些在 xml android 应用程序 UI 上设计的表单 并用传入的信息填充 pdf 表单 我有 PDF 格式的表格 我只想将其与我的
  • 使用来自同一 URL 的多个 POST 数据进行抓取

    我已经创建了一个蜘蛛 它可以收集具有匹配电话号码的公司名称列表 然后将其保存到 CSV 文件中 然后我想使用 CSV 文件中的电话号码作为 POST 数据从另一个网站抓取数据 我希望它循环访问相同的起始 URL 但只是抓取每个电话号码生成的
  • 剔除映射 JSON 读取时出错

    我正在 Web 应用程序上使用淘汰赛 该应用程序使用 foreach 显示数据 包括所有需要的库 我收到以下错误 Error Unable to parse bindings Message ReferenceError d is not
  • jquery 中两个类之间的淡入淡出

    我希望能够淡出这门课 h2 class care home fees a title Care Home Fees href Text a h2 并淡入此 h2 class care home fees over a title Care
  • Marshal 大小常量数组

    我试图在结构内有一个堆栈分配的数组 我指的是指针 但我希望在没有额外代码的情况下完成分配 因为我在编写代码时知道大小 我不想做一堆new当我创建我的结构时 如果我什至可以做到不unsafe完美的背景 我尝试了一些东西 但效果不佳 我是 C
  • “Quartz.Impl.StdSchedulerFactory”的类型初始值设定项引发异常

    我正在按照以下说明进行操作Quartz Net 的教程 http quartznet sourceforge net tutorial index html非常接近 但我在尝试调试我的项目时遇到启动错误 The type initializ
  • 在 NHibernate 中如何将 Replace 添加到 Restrictions.Eq?

    我想添加一个 Restrictions Eq 并用 TSQL 替换列名 我该怎么做呢 string location Columbus OH var requestQuery Session CreateCriteria
  • 命名空间动态加载的 javascript 文件的内容

    是否可以为动态插入的 JavaScript 文件命名空间 我知道我可以通过创建一个动态包含 JavaScript 文件script标记并将其插入到 DOM 中 但是这个包含的文件可以命名空间吗 所以 如果该文件有一个名为bar 我想通过命名
  • 有没有办法暂停所有 Threading.Timer 计时器?

    我是 C 新手 正在开发一个需要多个计时器的程序 我想知道当程序运行 CPU 密集型代码时是否有办法同时暂停该程序中的所有计时器 目前 当前启用的计时器尝试赶上密集操作期间引发的所有计时器事件 我认为您可以创建这些计时器的列表 当您激活它们
  • 在 Java 中运行 CUDA 代码的最简单方法是什么?

    我有一些用 C 语言编写的 CUDA 代码 它似乎工作正常 它是普通的旧 C 而不是 C 我正在运行一个 Hadoop 集群 并且想要整合我的代码 因此理想情况下我希望在 Java 中运行它 长话短说 系统太复杂 目前 C 程序解析日志文件
  • 在android中以不同模式打开手电筒

    下面的代码可以在不支持手电筒的 Android 设备 例如摩托罗拉剃须刀 上运行吗 请哪位好心人测试一下是否有这样的手机并请告诉我 提前致谢 if isFlashOn if camera null params null return Li
  • ClientRect 神秘地比 WindowRect 小?

    我在 Visual Studio 中启动了一个新的 Windows 桌面 C 项目 窗口创建如下所示 HWND hWnd CreateWindowW szWindowClass szTitle WS OVERLAPPEDWINDOW CW
  • 如何将图表嵌入到幻灯片或苹果的主题演讲中?

    我正在学习如何用plotly 生成图表 我是生物化学研究生 我想将这些图表用于演示文稿 例如幻灯片 主题演讲 我想知道是否有人可以给我一个总体策略或教程链接 谢谢你 Plotly 有一个 MS Office 应用程序 允许嵌入 Window
  • Java中重新定义静态方法意味着什么?

    我一直在阅读 SCJP 学习指南中有关静力学的部分 其中提到了以下内容 静态方法不能被重写 但它们可以被重新定义 重新定义到底意味着什么 是否存在父级和子级中都存在具有相同签名的静态方法的情况 但它们是通过类名单独引用的 例如 class