gpt4 book ai didi

c# - 是否可以实例化提供其余实现的抽象类?

转载 作者:太空宇宙 更新时间:2023-11-03 22:01:36 36 4
gpt4 key购买 nike

有这样的类我可以在适当的地方实例化它吗?

abstract class Mammal {
public abstract void Foo();
}

我希望这样的事情应该有效:

Mammal wolf = new Mammal() {
public void Foo() { Console.WriteLine("Wooo"); }
}

但是编译器不允许这样做。

最佳答案

看起来您正在寻找类似于 Java 中的匿名内部类的东西。 C# 中没有等效项。选项:

  • 创建一个嵌套类。
  • 为每个抽象方法创建一个使用委托(delegate)的实现,然后使用匿名函数“内联”创建这些实现
  • 如果类型只包含一个抽象方法,考虑使用委托(delegate)而不是抽象类作为开始。

关于c# - 是否可以实例化提供其余实现的抽象类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9890504/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com