Monday 11 August 2014

Interface in C#

Interface:
An interface is defined as a syntactical contract that all the classes inheriting the interface should follow. The interface defines the 'what' part of the syntactical contract and the deriving classes define the 'how' part of the syntactical contract.
Interfaces define properties, methods and events, which are the members of the interface. Interfaces contain only the declaration of the members. It is the responsibility of the deriving class to define the members. It often helps in providing a standard structure that the deriving classes would follow.
Abstract classes to some extent serve the same purpose, however, they are mostly used when only few methods are to be declared by the base class and the deriving class implements the functionalities.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Practice
{
    class Program
    {
        static void Main(string[] args)
        {
     Transaction t = new Transaction("a", "26/07/1990", 22.2);
            t.Showtransaction();
           
        }

    }
}
  
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Practice
{
    public interface ITransaction
    {
        void Showtransaction();
        double getAmount();
    }
    class Transaction : ITransaction
    {
        private string code;
        private string date;
        private double amount;
        public Transaction(string c, string d, double a)
        {
            code = c;
            date = d;
            amount = a;
        }
        public double getAmount()
        { return amount; }
        public void Showtransaction()
        {
            Console.WriteLine("code {0}",code);
            Console.WriteLine("date {0}",date);
            Console.WriteLine("Amount {0}",getAmount());

        }
    }
}

Output:
Code a
Date : 26/07/1990
Amount 22.2

No comments:

Post a Comment