КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Области доступаОбласть доступа указывает участки кода, откуда можно обращаться к данной составляющей класса. В большинстве объектно-ориентированных языков программирования поддерживаются следующие области доступа: · private (закрытая составляющая класса) – обращения допускаются только из методов класса, в котором определена данная составляющая. Например, если в классе «Автомобиль» есть закрытая составляющая «Серийный номер», то прочитать её значение можно только в методах этого же класса. Ни дочерние классы, ни те, которые будут создавать экземпляр «Автомобиль» доступа к данному свойству получить не могут; Закрытые составляющие класса объявляются следующим образом: class Parent { private int _value; private int Calculate(int parAmount) { reutrn _value + parAmount; } } В данном поле и метод класса объявлены как закрытые; · protected (защищённая, внутренняя составляющая иерархии классов) – обращения допускаются из методов класса, а также из методов всех дочерних классов. Например, если в классе «Автомобиль» есть закрытая составляющая «Серийный номер», то прочитать её значение можно только в методах этого класса и в методах любых дочерних классов. Если другие классы будут создавать экземпляр класса «Автомобиль», то они не смогут получить доступ к данному свойству; Защищённые составляющие класса объявляются следующим образом: class Parent { protected int _value; protected int Calculate(int parAmount) { return _value + parAmount; } } В данном поле и метод класса объявлены как закрытые; · public (открытый член класса)– обращения к составляющей класса возможны из любого кода. Открытые составляющие класса объявляются следующим образом: class Parent { public int _value; public int Calculate(int parAmount) { return _value + parAmount; } } В данном поле и метод класса объявлены как закрытые; Если область доступа не указывается явно, то она устанавливается в соответствии с настройками среды разработки (область доступа по умолчанию). Помимо области доступа составляющих класса, у самого класса также есть область доступа: · internal – При данной области доступа, к классу можно обращаться только внутри библиотеки/программы, где он объявлен. Т.е. если класс объявлен в одной библиотеке с доступом internal, то его нельзя будет использовать в других библиотеках, приложениях; · public – При данной области доступа, к классу можно обращаться из любых модулей; Пример объявления области доступа класса: public class Parent { }
|