Friday, October 5, 2018

ABSTRACT CLASS
An Abstract class is an incomplete class or special class we can't instantiate. We can use an Abstract class as a Base Class. An Abstract method must be implemented in the non-Abstract class using the override keyword. After overriding the abstract method is in the non-Abstract class. We can derive this class in another class and again we can override the same abstract method with it. 

Features:
  1. An abstract calss can inherit from a class and one or more interfaces.
  2. An abstract class can implement code with non-Abstract methods.
  3. An Abstract class can have modifiers for methods, properties etc.
  4. An Abstract class can have constants and fields.
  5. An abstract class can implement a property.
  6. An abstract class can have constructors or destructors.
  7. An abstract class cannot be inherited from by structures.
  8. An abstract class cannot support multiple inheritance.
Example 1:
    #region
    //An abstract calss can inherit from a class and one or more interfaces.
    interface IVendorTransDetails    {
        void getVendorID();
    }
    interface IClaimsTracker    {
        void getSeqID();
    }
    class ClaimsMaster    {
        string getDCNNO()
        {
            return "PC20100308A00005";
        }
    }
Example 2:

abstract class Abstract : ClaimsMaster, IClaimsTracker, IVendorTransDetails
{
    //Here we should implement modifiers oterwise it throws complie-time error    public void getVendorID()
    {
        int s = new int();
        s = 001;
        Console.Write(s);
    }
    public void getSeqID()
    {
        int SeqID = new int();
        SeqID = 001;
        Console.Write(SeqID);
    }
#endregion

Example 3:
    #region
    //An abstract class can implement code with non-Abstract methods.
abstract class NonAbstractMethod{
    //It is a Non-abstract method we should implement code into the non-abstract method on the class.     public string getDcn()
    {
        return "PS20100301A0012";
    } 
    public abstract void getSeqID(); 
class Utilize : NonAbstractMethod{
    public override void getSeqID()
    {
    }

#endregion

Example 4:

    #region 
    //Abstract class can have modifiers for methods,properties and An abstract class can implement a property
public abstract class abstractModifier{
    private int id; 
    public int ID
    {
        get { return id; }
        set { id = value; }
    } 
    internal abstract void Add();
#endregion

Example 5:

    #region 
    //Abstract class can have constant and fields    public abstract class ConstantFields    {
        public int no;
        private const int id = 10;
    }
    #endregion

Example 6:

    #region 
    //An abstract class can have constructors or destructors    abstract class ConsDes    {
        ConsDes()
        {
        }
        ~ConsDes()
        {
        }
    }
    #endregion

Example 7:


    #region
 
    //An abstract class cannot be inherited from by structures    public struct test    {
    }
    //We can't inheritance the struct class on the abstract class    abstract class NotInheritanceStruct    {
    }
    #endregion
Example 8:

    #region 
    //An abstract class cannot support multiple inheritance    class A    {
    }
    class B : A    {
    }
    abstract class Container : B //But we can't iherit like this : A,B    {
    }
    #endregion

No comments:

Post a Comment

ref Keyword Vs out Keyword

ref Keyword Vs out Keyword The  ref  modifier means that: The value is already set and The method can read and modify it. The  ou...