函数的“static new”修饰符有什么意义?

2024-04-13

今天,我在遗留代码中发现了一些东西。它具有“静态新”一项功能。看起来像这样。

class Foo
{
    public static void Do()
    {
        Console.WriteLine("Foo.Do");
    }
}

class Bar: Foo
{
    public static new void Do()
    {
        Console.WriteLine("Bar.Do");
    }
}

我不明白静态新修饰符为Do类中的方法Bar。在C#中,静态方法只能用类名调用,不能用对象名调用。所以,我认为拥有“新”和没有“新”之间没有任何区别。

一般来说,如果某些语法是不必要的,C# 就将其视为错误。 有人知道为什么 C# 允许这样的语法吗?


如果您删除new从你的代码中你得到:

警告 CS0108:“Bar.Do()”隐藏继承成员“Foo.Do()”。如果打算隐藏,请使用 new 关键字。

C# 编译器只是警告您可能正在做一些您不希望做的事情,并要求您插入new关键字来确认您知道自己在做什么。除了抑制警告之外,没有其他作用。

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

函数的“static new”修饰符有什么意义? 的相关文章

  • C# 创建函数队列

    我写了一个名为 QueueManager 的类 class QueueManager Queue functionsQueue public bool IsEmpty get if functionsQueue Count 0 return
  • PHP 静态变量用双引号引起来

    如何让 PHP 计算双引号中的静态变量 我想做这样的事情 log self CLASS METHOD entering 我尝试过各种 组合来获取变量值self CLASS 但没有任何效果 我目前已经解决了字符串连接问题 但输入起来很痛苦 l
  • 静态类变量与外部变量相同,只是具有类作用域吗?

    在我看来 静态类变量与外部变量相同 因为你只需要declare它在static int x extern int x语句 并在其他地方实际定义它 通常在 cpp 文件中 静态类变量 h file class Foo static int x
  • 如何在 Asp.net Gridview 列中添加复选框单击事件

    我在 asp 中有一个 gridview 其中我添加了第一列作为复选框列 现在我想选择此列并获取该行的 id 值 但我不知道该怎么做 这是我的 Aspx 代码
  • 方法“xxx”不能是事件的方法,因为该类派生的类已经定义了该方法

    我有一个代码 public class Layout UserControl protected void DisplayX DisplayClicked object sender DisplayEventArgs e CurrentDi
  • 在 MATLAB 中创建共享库

    一位研究人员在 MATLAB 中创建了一个小型仿真 我们希望其他人也能使用它 我的计划是进行模拟 清理一些东西并将其变成一组函数 然后我打算将其编译成C库并使用SWIG https en wikipedia org wiki SWIG创建一
  • 默认值 C# 类 [重复]

    这个问题在这里已经有答案了 我在控制器中有一个函数 并且我收到表单的信息 我有这个代码 public Actionresult functionOne string a string b string c foo 我尝试将其转换为类似的类
  • 无法加载文件或程序集“EntityFramework,版本=6.0.0.0”

    我究竟做错了什么 我该如何解决这个问题 我有一个包含多个项目的解决方案 它是一个 MVC NET 4 5 Web 应用程序 在调试模式下启动后调用其中一个项目时 出现此错误 导致此错误的项目具有以下参考 两个都是版本6 0 0 0 应用程序
  • 防止GDB中的PLT(过程链接表)断点

    在最新版本的 GDB 中 在库函数调用上设置断点会导致多个实际断点 调用过程链接表 PLT 实际的函数调用 这意味着当调用库函数时 我们每次都会经历两次中断 在以前的 GDB 版本中 只会创建 2 因此您只能得到一次中断 那么问题来了 是否
  • C#中Enum中定义的value__是什么

    What value 可能在这里 value MSN ICQ YahooChat GoogleTalk 我运行的代码很简单 namespace EnumReflection enum Messengers MSN ICQ YahooChat
  • dropdownlist DataTextField 由属性组成?

    有没有一种方法可以通过 C 使 asp net 中的下拉列表的 datatextfield 属性由对象的多个属性组成 public class MyObject public int Id get set public string Nam
  • 正确使用“extern”关键字

    有一些来源 书籍 在线材料 解释了extern如下 extern int i declaration has extern int i 1 definition specified by the absence of extern 并且有支
  • 将非算术类型作为参数传递给 cmath 函数是否有效?

    给定以下用户定义类型S具有转换功能double struct S operator double return 1 0 以及以下调用cmath http en cppreference com w cpp header cmath使用类型的
  • 不兼容的类型 - 是因为数组已经是指针吗?

    在下面的代码中 我创建一个基于书籍结构的对象 并让它保存多个 书籍 我设置的是一个数组 即定义 启动的对象 然而 每当我去测试我对指针的了解 实践有帮助 并尝试创建一个指向创建的对象的指针时 它都会给我错误 C Users Justin D
  • 如何访问窗口?

    我正在尝试使用其句柄访问特定窗口 即System IntPtr value Getting the process of Visual Studio program var process Process GetProcessesByNam
  • 在 C++ 和 Windows 中使用 XmlRpc

    我需要在 Windows 平台上使用 C 中的 XmlRpc 尽管我的朋友向我保证 XmlRpc 是一种 广泛可用的标准技术 但可用的库并不多 事实上 我只找到一个库可以在 Windows 上执行此操作 另外一个库声称 您必须做很多工作才能
  • C++ [Windows] 可执行文件所在文件夹的路径[重复]

    这个问题在这里已经有答案了 我需要访问一些文件fstream在我的 Windows 上的 C 应用程序中 这些文件都位于我的exe文件所在文件夹的子文件夹中 获取当前可执行文件的文件夹路径的最简单且更重要的 最安全的方法是什么 Use 获取
  • 无法使 Polly 超时策略覆盖 HttpClient 默认超时

    我正在使用 Polly 重试策略 并且正如预期的那样 在重试过程中HttpClient达到 100 秒超时 我尝试了几种不同的方法来合并 Polly 超时策略 将超时移至每次重试而不是总计 但 100 秒超时仍然会触发 我读过大约 5 个
  • 新的 .NET 6 控制台模板中的 C# 函数重载不起作用

    我在尝试重载该函数时遇到错误Print object in the 新的 NET 6 C 控制台应用程序模板 https learn microsoft com en us dotnet core tutorials top level t
  • FindAsync 很慢,但是延迟加载很快

    在我的代码中 我曾经使用加载相关实体await FindAsync 希望我能更好地遵守 C 异步指南 var activeTemplate await exec DbContext FormTemplates FindAsync exec

随机推荐

  • Elastic Beanstalk 运行部署后脚本

    我的 Node js 应用程序由两部分组成 一个 Express 后端和一个 React 前端 我在这个结构中有两个 package json 文件 package json app package json 我想要做的是在我的前端文件夹应
  • 在标题中添加图像标题和/或描述

    是否可以操纵图像标题的输出内容以这种方式 不仅在每个图像下输出标题 而且还输出图像标题和 或描述 在媒体库中定义 可能通过functions php 是的 可以操纵the content 您想要做的最简单的方法是在您的functions p
  • NSUserDefaults 和 Lion 下的沙箱

    根据 Apple 的要求 将我的项目之一移至支持沙箱 我像这样使用 UserDefaults NSUserDefaults standardUserDefaults setObject myNumber forKey myNumberKey
  • 使用 XSLT 将 XML 转换为 JSON

    我想使用 XSLT 将一些 XML 转换为 JSON XML 如下所示
  • InnoDB导致MySQL无法重启

    我无法重新启动 MySQL 或从 InnoDB 表 恢复 MySQL 我有一个使用 Ubuntu 16 04 的 WSL 由于 未知 的意外 早上我无法访问 MySQL 尝试重新启动它 所有错误 尝试了有关 InnoDB 和日志 文件的所有
  • 告诉 git 不要合并二进制文件而是选择

    当二进制文件 swf jar 和 flv 在本地更改时 我尝试引入更改 git 会尝试合并它们并报告冲突 然后 我分支到一个临时分支 并提交本地更改的二进制文件 并在拉取后使用递归策略将它们合并回来 太多工作 有没有办法告诉 git 不要尝
  • 什么是 Ruby on Rails Action 电缆适配器?

    通过 RoR 动作电缆导轨查看http edgeguides rubyonrails org action cable overview html subscription adapter http edgeguides rubyonrai
  • h5py 是否将整个文件读入内存?

    h5py是否将整个文件读取到内存中 如果是这样 如果我有一个非常非常大的文件怎么办 如果不是的话 我每次要单个数据就从硬盘取数据会不会很慢 我怎样才能让它更快 h5py是否将整个文件读取到内存中 不 不是的 特别是 切片 dataset 5
  • 使用 CMake 在主项目之前强制构建外部项目(使用 buildtools)

    我想在开始构建我的主项目之前构建 gsl 我将以下行添加到 rootCMakeLists txt file cmake minimum required VERSION 2 8 project moose include CheckIncl
  • 在pytorch张量中过滤数据

    我有一个张量X like 0 1 0 5 1 0 0 1 2 0 我想实现一个名为的函数filter positive 它可以将正数据过滤成新的张量并返回原始张量的索引 例如 new tensor index filter positive
  • 如何查找联系人图像支持的最大图像尺寸?

    背景 从 jelly bean 4 1 开始 android 现在支持联系人图像720x720 http developer android com about versions jelly bean html android 41 之前
  • 如何在 json 模式中创建模式引用的嵌套列表(数组)

    我正在尝试构建一个架构 其中包含我想要强制架构的项目列表 基本上这是我想要根据架构验证的数据 data VIN 123 timestamp xxxx model jeep inspections door badge expected ye
  • R 中的负向前瞻未按预期运行

    我正在尝试替换以以下开头的字符串中的实例abc在我正在 R 中使用的文本中 输出文本在 HTML 中经过几次突出显示 因此我需要替换以忽略 HTML 插入符内的文本 以下内容似乎在 Python 中有效 但我在 R 中的正则表达式上没有得到
  • 如何在 SwiftUI 中以编程方式编辑 TextField 的边框颜色?

    这是代码片段 TextField Email text self email padding overlay RoundedRectangle cornerRadius 1 stroke Color black lineWidth 1 Se
  • Django 用交集计数注释查询集

    Djangonauts 我需要挖掘你们的大脑 简而言之 我有以下三个模型 class Location models Model name models CharField max length 100 class Profile mode
  • 如何将 window-1251(俄语西里尔字母)MySql 数据库转换为 UTF-8

    我有一个俄罗斯网站的数据库 其编码为 windows 1251 换句话说 来自 phpmyadmin 的字母如下所示 换句话说就是难以辨认的字符 为了正确显示内容 必须在 php ini 中添加此代码 header Content Type
  • 浮点线性插值

    在两个变量之间进行线性插值a and b给定一个分数f 我目前正在使用这段代码 float lerp float a float b float f return a 1 0 f b f 我认为可能有一种更有效的方法 我使用的是没有 FPU
  • .net 标准库中的 HttpContext

    我正在开展几个项目 其中之一是ASP NET 4 5应用程序 另一个是 Net Core API 1 1项目 asp net 应用程序正在使用HttpContext读取 cookie 和页眉的类 现在 我需要将其移至 net 标准库 该库可
  • POSIX 风格的操作系统中的命令行选项应该是下划线风格吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 POSIX 风格操作系统中程序的命令行选项名称是否应该是下划线风格 例如 cure world hunger 或者也许是其他风格 curewor
  • 函数的“static new”修饰符有什么意义?

    今天 我在遗留代码中发现了一些东西 它具有 静态新 一项功能 看起来像这样 class Foo public static void Do Console WriteLine Foo Do class Bar Foo public stat