public
и private
— это модификаторы доступа для членов. Это относится к тому, кто может получить доступ к членам напрямую через код. public
означает, что доступ не ограничен, поэтому любой может получить доступ к члену напрямую через код. private
означает, что доступ ограничен только содержащим классом. Таким образом, каждый может получить доступ к numberOne
напрямую через код, но только содержащий класс может получить доступ к numberTwo
напрямую через код.
Всего существует пять модификаторов доступа:
public
: доступ не ограничен
protected
: доступ ограничен содержащим классом или классами, производными от содержащего класса
internal
: доступ ограничен содержащей сборкой
protected internal
: это ИЛИ protected
и internal
, так что доступ ограничен содержащим классом или классами, производными от содержащего класса ИЛИ содержащей сборки
private
: доступ ограничен содержащим классом
Обратите внимание, что пункт «непосредственно через код» здесь имеет решающее значение; можно получить доступ к этим членам с помощью отражения.
Соответствующим разделом спецификации C# является §3.5, особенно §3.5.2.
14.12.2010