Я хочу сделать закрытую переменную-член, которая будет закрытой даже для класса, которому она принадлежит, и доступ к нему могут получить ТОЛЬКО ее методы получения и установки.
Я знаю, что вы можете сделать это с автоматическими свойствами, такими как
private int MyInt{ get; set;}
Но я хочу иметь возможность изменять метод получения и установки, чтобы (например) я мог регистрировать, сколько раз поле было установлено (даже классом-владельцем). Как то так
private int MyInt
{
get{ return hiddenValue; }
set{ hiddenValue = value; Console.Out.WriteLine("MyInt has been set");}
}
где "hiddenValue" - член, который доступен только в методах получения и установки.
Зачем? потому что я параноик-защитник, я даже не доверяю себе: p.
Возможно ли это в C #? и если да, то каков синтаксис?
Спасибо.