We can access private variable of a class in a different class in so many ways. Here is some of them:

  1. By using Public Method

    We can access a private variable in a different class by putting that variable with in a Public method and calling that method from another class by creating object of that class.

    Example:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. namespace ConsoleApplication1
    6. {
    7. class PrivateVariable
    8. {
    9. private int i = 10; //Declaring and initializing a private variable
    10. public void DisplayVariable()
    11. {
    12. Console.Write("The Value of Private Variable=" + i); //Accessing Private variable with in a public methode
    13. }
    14. }
    15. class DisplayPrivateVariable
    16. {
    17. static void Main()
    18. {
    19. PrivateVariable objPrivateVariable = new PrivateVariable();
    20. objPrivateVariable.DisplayVariable(); //Calling the public method
    21. }
    22. }
    23. }
  2. By Using Inner class

    By using inner class also we can access a private variable of a class in another class. For better understanding have look at the example.

    Example:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. namespace ConsoleApplication1
    6. {
    7. class PrivateVariable2
    8. {
    9. class Outerclass
    10. {
    11. private int i = 10;
    12. private int j = 20;
    13. class Innerclass
    14. {
    15. static void Main()
    16. {
    17. Outerclass objouter = new Outerclass();
    18. int Result = objouter.i + objouter.j;
    19. Console.Write("Sum=" + Result);
    20. Console.ReadLine();
    21. }
    22. }
    23. }
    24. }
    25. }
  3. By Using Properties

    By using properties also we can do the same work as previous.

    Example:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq;
    4. using System.Text;
    5. namespace ConsoleApplication1
    6. {
    7. class Employee
    8. {
    9. private int _EmpID = 1001;
    10. private string _EmpName;
    11. public int EmpID
    12. {
    13. get
    14. {
    15. return _EmpID;
    16. }
    17. }
    18. public string EmpName
    19. {
    20. get
    21. {
    22. return _EmpName;
    23. }
    24. set
    25. {
    26. _EmpName = "Smith";
    27. }
    28. }
    29. }
    30. class AcessEmployee
    31. {
    32. static void Main()
    33. {
    34. Employee objEmployee = new Employee();
    35. Console.WriteLine("Employee ID: " + objEmployee.EmpID);
    36. Console.WriteLine("Employee old Name: " + objEmployee.EmpName);
    37. objEmployee.EmpName = "Dyne Smith";
    38. Console.WriteLine("Employee New Name: " + objEmployee.EmpName);
    39. Console.ReadLine();
    40. }
    41. }
    42. }