class TestClass
{
private string _privateString = \"hello\";
void ChangeData()
{
TestClass otherTestClass = new TestClass();
otherTestCla
This is because C# enforces class-level privacy and not object-level privacy.
Most mainstream languages enforce the same policy, i.e. C#, C++ and Java. I think the reason are:
1) because developers are accustomed to that kind of policy;
2) because object-level privacy would become much too tedious in return of very few advantages.