Инкапсуляция в C#
От: homa_brut  
Дата: 21.11.03 04:41
Оценка: :)
Привет!

А что теперь можно обращаться к private членам классов и изменять их?
    class Employee
    {
        private string fullName;

        public Employee(string fullName)
        {
            this.fullName = fullName;
        }

        static void Main(string[] args)
        {
            Employee emp = new Employee("Mary");
            Console.WriteLine(emp.fullName);
            emp.fullName = "Anna";
            Console.WriteLine(emp.fullName);
        }
    }

Результат:

Mary
Anna
Press any key to continue


Или я что-то не понял...

Благодарю за ответы.
Re: Инкапсуляция в C#
От: mrhru Россия  
Дата: 21.11.03 04:56
Оценка: 1 (1)
Здравствуйте, homa_brut, Вы писали:

_>Привет!


_>А что теперь можно обращаться к private членам классов и изменять их?

_>
_>    class Employee
_>    {
_>        private string fullName;

_>        public Employee(string fullName)
_>        {
_>            this.fullName = fullName;
_>        }

_>        static void Main(string[] args)
_>        {
_>            Employee emp = new Employee("Mary");
_>            Console.WriteLine(emp.fullName);
_>            emp.fullName = "Anna";
_>            Console.WriteLine(emp.fullName);
_>        }
_>    }
_>

_>Результат:
_>

_>Mary
_>Anna
_>Press any key to continue


_>Или я что-то не понял...


А разве Main() перестала быть членом того же класса?

    class Employee
    {
        private string fullName;
    ...
    }

    class MyApp
    {
        static void Main(string[] args)
        {
            Employee emp = new Employee("Mary");
            Console.WriteLine(emp.fullName);
            emp.fullName = "Anna"; // будет ругаться
            Console.WriteLine(emp.fullName);
        }
    }
>
Re: Инкапсуляция в C#
От: TK Лес кывт.рф
Дата: 21.11.03 04:56
Оценка:
Hello, "homa_brut"
>
> А что теперь можно обращаться к private членам классов и изменять их?
> Или я что-то не понял...
>

Метод Main является членом класса Employee. Именно это дает ему доступ к private полям класса.
Posted via RSDN NNTP Server 1.8 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Инкапсуляция в C#
От: DMach Россия http://www.1Gb.ru
Дата: 21.11.03 12:16
Оценка:
Здравствуйте, homa_brut, Вы писали:

_>Привет!


_>А что теперь можно обращаться к private членам классов и изменять их?


Модификатор доступа относится к типу а не к экземпляру.
... << RSDN@Home 1.1 beta 2 >>
Re: Инкапсуляция в C#
От: IT Россия linq2db.com
Дата: 21.11.03 12:54
Оценка:
Здравствуйте, homa_brut, Вы писали:

_>А что теперь можно обращаться к private членам классов и изменять их?


Схема друзей и подруг в .NET несколько отличается от C++. В частности, теперь можно обращаться к private мемберам другого экземпляра того же класса.
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Инкапсуляция в C#
От: VBez  
Дата: 21.11.03 12:59
Оценка: :)
IT>Схема друзей и подруг в .NET несколько отличается от C++. В частности, теперь можно обращаться к private мемберам другого экземпляра того же класса.

А кто это отменил в С++???
Re: Инкапсуляция в C#
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.11.03 21:59
Оценка: 6 (1)
Здравствуйте, homa_brut, Вы писали:

Может в тупую стандарт почитать или какую книжку для ничинающий?
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Инкапсуляция в C#
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.11.03 21:59
Оценка: :))
Здравствуйте, VBez, Вы писали:

IT>>Схема друзей и подруг в .NET несколько отличается от C++. В частности, теперь можно обращаться к private мемберам другого экземпляра того же класса.


VB>А кто это отменил в С++???


Ну, рак ИТ сказал, значит больше нельзя.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Инкапсуляция в C#
От: IT Россия linq2db.com
Дата: 23.11.03 19:28
Оценка: 6 (1)
Здравствуйте, VladD2, Вы писали:

IT>>>Схема друзей и подруг в .NET несколько отличается от C++. В частности, теперь можно обращаться к private мемберам другого экземпляра того же класса.


VB>>А кто это отменил в С++???


VD>Ну, рак ИТ сказал, значит больше нельзя.


Да ладно, чего-то там было. Не помню уже. Хотя тут я может и мимо кассы, лень проверять.
Если нам не помогут, то мы тоже никого не пощадим.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.