<H1>Видимость членов класса и модификаторы доступа</H1>
<p>Каждое поле, метод или свойство класса имеет модификатор (атрибут) доступа,
задающий правила его видимости. В<b>PascalABC.NET</b> существуют
четыре вида модификаторов доступа: <code><b>public</b></code> (открытый), <code><b>private</b></code> (закрытый), <code><b>protected</b></code> (защищенный)
и <code><b>internal</b></code> (внутренний).
К члену класса, имеющему атрибут <code><b>public</b></code>,
можно обратиться из любого места программы, члены класса с атрибутом
<code><b>private</b></code> доступны только внутри методов этого
класса, члены класса с атрибутом <code><b>protected</b></code>
доступны внутри методов этого класса
и всех его подклассов, члены класса с атрибутом <code><b>internal</b></code> доступны внутри сборки (термин .NET, сборка в
нашем понимании - это множество файлов, необходимых для генерации
.exe или .dll-файла). Кроме
того,
<code><b>private</b></code> и <code><b>protected</b></code>
члены видны отовсюду в пределах модуля, в котором определен класс.</p>
<p>Тело класса делится на секции. В начале каждой секции располагается
модификатор доступа, после которого идут поля, а затем методы и свойства с
доступом, определяемым этим модификатором. В первой секции модификатор доступа может отсутствовать, в этом случае
подразумевается модификатор <code><b>internal</b></code>. В классе может быть произвольное
количество секций, располагающихся в произвольном порядке.</p>
<p>Например, пусть данный код располагается в одном модуле:</p>