Let's learn wrapper class today. Below is the
formal bookish definition of Wrapper class.
A wrapper class is any class which "wraps" or "encapsulates" the functionality
of
another class or component. These are useful by providing a level of abstraction
from the
implementation of the underlying class or component;
Not much clear , Right ?
Ok, let me give example from my experience. I have a class for TAX calculation
containing method to calculate TAX, and my another class called SALARY
calculator is there. Now to calculate salary I want to use TAX calculator class.
And my interest is that I will not disclose to other class “How I am calculating
TAX”?. Then I will simply wrap my TAX calculator class by SALARY class.
components. Have a look of below code. Though it's another example one.
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
using
System.Collections;
using
System.Data.SqlClient;
using
System.Data;
using
System.Diagnostics;
namespace
BlogProject
{
class Wrapper
//Wrapper Class
{
class InnerClass
//Inner Class
{
public Int32
ProcessData(int Val)
{
return Val + 1;
}
}
public Int32
CallRapper()
{
Wrapper.InnerClass
wpr = new Wrapper.InnerClass();
// Internally call to Wrapper
class.
return wpr.ProcessData(100);
}
}
class Program
{
static void
Main(string[] args)
{
Wrapper w = new
Wrapper();
Console.WriteLine("Data
Process by inner class and show by Wrapper Class:-" + w.CallRapper());
Console.ReadLine();
}
}
}