By 22/07/2015 15 Comments

C# Interface Inheritance

  • In C# Interface Inheritance, an interface can be inherited from other base/parent interfaces. Base interface member can be hidden in its derived interface by same declaration in it and generates a warning message. Warning message can be prevented through the use of “new” keyword with derived interface members.

General Syntax:

access-modifier interface Interface1
{
// members
}
access-modifier interface Interface2 : Interface1
{
// members
}

Example:

using System;
namespace csharpBasic
{
    // A first interface declaration.
    public interface IMarkSheet
    {
        double GetPercentage(double obtainMarks, double totalMarks);
        double GetTotalMarks
        {
            get;
        }

        double GetAspMarks();
        double GetJsMarks();
    }

    // Second inteface IMarksheetComponent which inherits first interface IMarkSheet.
    interface IMarksheetComponent : IMarkSheet
    {
        double GetObtainMarks();
    }

    // MarkSheet implements second interface IMarksheetComponent.
    class MarkSheet : IMarksheetComponent
    {
        // Fields declaration.
        double AspMarks;
        double JavascriptMarks;
        double TotalMarks = 200;

        // Double type read-only property declaration.
        public double GetTotalMarks
        {
            get
            {
                return TotalMarks;
            }
        }

        // Parametrized constructor with 2 parameters.
        public MarkSheet(double aspMarks, double javascriptMarks)
        {
            AspMarks = aspMarks;
            JavascriptMarks = javascriptMarks;
        }

        // Double return type methods which returns each subject mark.
        public double GetAspMarks()
        {
            return AspMarks;
        }
        public double GetJsMarks()
        {
            return JavascriptMarks;
        }

        // Return type method returns obtain marks.
        public double GetObtainMarks()
        {
            return AspMarks + JavascriptMarks;
        }

        // Return type method which returns percentage of obtain marks.
        public double GetPercentage(double obtainMarks, double totalMarks)
        {
            return (obtainMarks / totalMarks) * 100.0;
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("General mark sheet information:");
            MarkSheet markSheet = new MarkSheet(80, 70);
            Console.WriteLine("Asp.NET marks: {0}", markSheet.GetAspMarks());
            Console.WriteLine("Javascript marks: {0}", markSheet.GetJsMarks());
            double obtainMarks = markSheet.GetObtainMarks();
            Console.WriteLine("Total Marks {0}", markSheet.GetTotalMarks);
            Console.WriteLine("Obtain marks: {0}", obtainMarks);
            Console.WriteLine("Pecentage: {0}", markSheet.GetPercentage(obtainMarks, markSheet.GetTotalMarks));
            Console.ReadKey();
        }
    }
    /*  The Output will be:
     
        General mark sheet information:
        Asp.NET marks: 80
        Javascript marks: 70
        Total Marks 200
        Obtain marks: 150
        Pecentage: 75

     */
}






← Previous Tutorial


Posted in: C# Advance, C#.NET

Leave your valuable Comment

Have a natural attraction for women cosmetics and replica watches uk clothes, no
more than two for men the most attractive one, is to make their own driving experience, happy and can serve as the facade of the car, another is to highlight the taste edify sentiment rolex replica watch. The replica rolex is undoubtedly the most fashionable accessories, wear a suit to attend the activities, but also get a decent match on the replica watches .