Pourquoi dois-je utiliser get et set?

J'ai un segment de code:

public class MyClass
{
    private string _myProperty;

    public string MyProperty
    {
        get
        {
            return _myProperty;
        }

        set
        {
            _myProperty = value;
        }
    }
}

Quel est le point ici? Je pourrais avoir déclaré la _myProperty chaîne publique et aucun de mes objets de classe serez en mesure d'accéder directement et d'obtenir ou de définir la valeur.

Au lieu de cela, nous faisons _myProperty privé et l'utilisation de get et set pour accéder, à l'aide de la classe de l'objet.

Dans les deux cas, l'objet de classe est en mesure d'y accéder et le résultat est toujours le même.

Alors pourquoi utiliser cette approche? C'est que seulement parce que je peux mettre en œuvre quelques contraintes dans setter?

À part ça quoi de mal à faire des variables de membre de cause publique? Dans cet exemple, j'ai pu exposer _myProperty publique au lieu de le restreindre à cette classe qu'en privé, comme la programmation orientée objet ne le suggèrent.

source d'informationauteur Simsons