C#接口详解:Visual Studio 2019 代码示例与UML图
C#接口详解:Visual Studio 2019 代码示例与UML图
本文将通过一个完整的C#代码示例,演示如何在Visual Studio 2019 中定义和使用接口,包括接口继承、接口实现和多态。为了更好地理解代码,我们还将提供UML类图。
1. 定义接口
首先,我们定义一个父接口 IGeometry 和两个继承自它的子接口 ICircle 和 IRectangle:csharpinterface IGeometry{ // 父接口定义的方法/属性 void Display();}
interface ICircle : IGeometry{ // 子接口 ICircle 定义的方法/属性 double CalculateArea();}
interface IRectangle : IGeometry{ // 子接口 IRectangle 定义的方法/属性 double CalculatePerimeter();}
2. 实现接口
接下来,我们定义两个类 Circle 和 Rectangle,分别实现 ICircle 和 IRectangle 接口:csharpclass Circle : ICircle{ private double radius;
public Circle(double radius) { this.radius = radius; }
public void Display() { Console.WriteLine('This is a circle with radius: ' + radius); }
public double CalculateArea() { return Math.PI * radius * radius; }}
class Rectangle : IRectangle{ private double width; private double height;
public Rectangle(double width, double height) { this.width = width; this.height = height; }
public void Display() { Console.WriteLine('This is a rectangle with width: ' + width + ' and height: ' + height); }
public double CalculatePerimeter() { return 2 * (width + height); }}
3. 示例程序
下面是一个简单的示例程序,演示如何使用上面定义的接口和类:csharpclass Program{ static void Main(string[] args) { ICircle circle = new Circle(5); circle.Display(); Console.WriteLine('Area of circle: ' + circle.CalculateArea());
IRectangle rectangle = new Rectangle(10, 20); rectangle.Display(); Console.WriteLine('Perimeter of rectangle: ' + rectangle.CalculatePerimeter());
Console.ReadLine(); }}
4. UML 类图
+--------------+ | IGeometry | +--------------+ | Display() | +--------------+ / \ / \ / \ +------------+ +----------------+ | ICircle | | IRectangle | +------------+ +----------------+ | Display() | | Display() | | CalculateArea() | CalculatePerimeter() | +----------------+----------------+ | | | | +---------------------------+ | Circle | +---------------------------+ | radius: double | +---------------------------+ | Display() | | CalculateArea() | +---------------------------+ | | +---------------------------+ | Rectangle | +---------------------------+ | width: double | | height: double | +---------------------------+ | Display() | | CalculatePerimeter() | +---------------------------+
总结
本文通过一个简单的示例,介绍了C#中接口的使用方法,包括接口定义、实现和继承。同时,我们也使用UML类图来帮助理解代码结构。希望这篇文章能够帮助您更好地理解C#接口的概念和用法。
原文地址: https://www.cveoy.top/t/topic/bnva 著作权归作者所有。请勿转载和采集!