gpt4 book ai didi

c# - 如何解决这个 c# 语法难题?

转载 作者:行者123 更新时间:2023-11-30 19:04:54 26 4
gpt4 key购买 nike

有人能给我解决以下代码难题的方法吗?给出了一个解决方案,但可以是多个解决方案。

// this code compiles
IAnimal animal= new Dog();
animal.Eat();

// this code doesn't compile
Dog animal = new Dog();
animal.Eat();

类定义应该是什么样子,以便上面的代码块在不同的范围内编译(第一个)和不编译(第二个)?

最佳答案

您可以通过使用显式接口(interface)实现来实现:

class Dog : IAnimal {
void IAnimal.Eat(){
//do stuff
}
}

相对于隐式接口(interface)实现:

class Dog : IAnimal {
public void Eat(){
//do stuff
}
}

关于c# - 如何解决这个 c# 语法难题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35092638/

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