默认接口方法是 C# 中的一项功能,允许您定义接口成员的实现。这可以提供很大的灵活性,特别是当随着时间的推移不断发展接口而不破坏现有的实现时。
例如,您可能有一个代表 IoT 应用程序中传感器的接口,随着时间的推移,您希望向其中添加新方法。向接口添加新方法会破坏所有现有的实现。使用默认接口方法,您可以添加具有默认实现的新方法,并且所有现有实现将继续工作而无需任何修改。
以下是如何使用默认接口方法的示例:
public interface ISensor
{
string GetStatus();
// New method with a default implementation
void Reset()
{
Console.WriteLine("Default reset implementation.");
}
}
public class TemperatureSensor : ISensor
{
public string GetStatus()
{
// Implementation specific to temperature sensor.
return "TemperatureSensor status";
}
// Reset method isn't required to be implemented thanks to the default implementation.
}
public class Program
{
public static void Main()
{
ISensor sensor = new TemperatureSensor();
Console.WriteLine(sensor.GetStatus()); // Output: TemperatureSensor status
sensor.Reset(); // Output: Default reset implementation.
}
}
使用默认接口方法向接口添加新功能,同时保持与针对早期版本接口编写的类的向后兼容性。这允许更灵活和健壮的 API 设计,特别是在库和框架中。