This program demonstrates how to define and use an interface in C#. An interface is a set of related properties and methods that a class or struct can implement. In this case, the interface IValue
has two properties: Count
and Name
.
The Image
and Article
classes both implement the IValue
interface, meaning that they must provide their own implementation for each of the properties and methods defined in the interface.
You can see that the Image
class has a straightforward implementation of the Name
property, while the Article
class converts the value of the Name
property to uppercase when it is set.
The Main
method creates two objects, value1
and value2
, that implement the IValue
interface. It then increments the Count
property of each object and sets the Name
property of each object to a different string. Finally, it prints the value of the Name
property for each object to the console.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
using System; interface IValue { int Count { get; set; } string Name { get; set; } } class Image : IValue { public int Count { get; set; } string _name; public string Name { get { return this._name; } set { this._name = value; } } } class Article : IValue { public int Count { get; set; } string _name; public string Name { get { return this._name; } set { this._name = value.ToUpper(); } } } class Program { static void Main() { IValue value1 = new Image(); IValue value2 = new Article(); value1.Count++; value2.Count++; value1.Name = "Tom"; value2.Name = "Jerry"; Console.WriteLine(value1.Name); Console.WriteLine(value2.Name); Console.ReadLine(); } } |