luni, 25 august 2014

Interface C#

An interface contains only the signatures of properties and methods.
The implementation of the methods is done in the class that implements the interface.

Example:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 

namespace WindowsFormsApplicationCS
{
    interface IAnimal
    {
        string Name { getset; }
        string Type { getset; }
    }
    class Dog : IAnimalIComparable
    {
        private string strName;
        private string strType;

        public Dog(string name)
        {
            this.Name = name;
        }

        public string Name
        {
            get { return strName; }
            set { strName = value; }
        }

        public string Type
        {
            get { return strType; }
            set { strType = value; }
        }

        public int CompareTo(object obj)
        {
            if (obj is IAnimal)
                return this.Name.CompareTo((obj as IAnimal).Name);
            return 0;
        }
    }


    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Dog dog1 = new Dog("Dog1");
            dog1.Type = "Carnivore";

            Dog dog2 = new Dog("Dog2");
            dog2.Type = "Carnivore";

            Dog dog3 = new Dog("Dog3");
            dog3.Type = "Carnivore";

            int x = dog1.CompareTo(dog2);  // reurn -1
            int y = dog1.CompareTo(dog3);  // reurn 0
        }
    }
}

Niciun comentariu:

Trimiteți un comentariu