АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

ПРИХОВАНІ ПОЛЯ І МЕТОДИ ______________________________________________________

Читайте также:
  1. A formula - formulae (formulas), a crisis - crises, a criterion - criteria, an index - indices, a bacterium — bacteria, an axis — axes
  2. A global effort to keep food prices from soaring higher
  3. A radioactive disintegration. Kinds of radioactive radiation
  4. A REVIEW OF THE FOOD AND BEVERAGE MARKET IN KAZAKHSTAN
  5. A) Listen to the recording of Text Five and mark the stresses and tunes, b) Repeat the text in the intervals after the model.
  6. A) Listen to the recording of Text Four and mark the stresses and tunes, b) Repeat the text in the intervals after the model.
  7. A) Listen to the recording of Text One and mark the stresses and tunes, b) Repeat the text in the intervals after the model.
  8. A) Listen to the recording of Text Six and mark the stresses and tunes, b) Repeat the text in the intervals after the model.
  9. A) Listen to the recording of Text Two and mark the stresses and tunes, b) Repeat the text in the intervals after the model.
  10. A) Make a round-table talk on the state of film-making in this country. Be ready to make suggestions about the possible improvements in film-making.
  11. A) Read the following extract from an essay by V. Belinsky and summarize it in English.
  12. A) Read the following text dealing with comprehension of literature on school level.
Одним з найважливіших принципів ООП є те, що програміст при розробці програми повинен думати про код і дані одночасно. Вони не повинні існувати окремо. Дані керують потоком коду, а код керує структурою і значеннями даних. Якщо код і дані є розділеними елементами, то завжди існує небезпека виклику правильної процедури з неправильними даними чи помилкової процедури з правильними даними. Контроль за правильністю виклику покладається на програміста. Pascal не проводить подібної перевірки, окрім перевірки типів. Об’єктний тип здійснює синхронізацію коду і даних шляхом спільної побудови їх описів. За правилами хорошого стилю програмування, доступ до полів об’єкта здійснюється лише через методи, що працюють з даними полями. Щоб одержати значення одного з полів об’єкта, необхідно викликати відповідний метод, який повертає значення потрібного поля. Щоб присвоїти полю значення, теж необхідно викликати метод, який призначить даному полю нове значення. Інколи при використанні об’єктів всередині модулів можуть зустрічатися частини описів об’єктів, які експортувати небажано, наприклад, в комерційних застосунках. Необхідно передбачити об’єкти, методи яких доступні, але безпосередній доступ до даних об’єкта заборонений. В Pascal-і з цією метою використовуються приховані (приватні) поля і методи. Приховані поля і методи доступні тільки всередині того модуля, в якому описаний об’єкт. Інші частини такого об’єкту можна експортувати, але поля і методи, описані як приховані, були б недоступними. Поля і методи, які записані безпосередньо після заголовку об’єктного типу чи директиви PUBLIC, не мають ніяких обмежень на область дій. На відміну від них, поля і методи, оголошені після директиви PRIVATE, вважаються приватними (прихованими) і обмежені використанням в межах модуля. Повний опис об’єкту буде виглядати так: TYPE NewObject=OBJECT(батьківський) поля; [загальнодоступні]; методи; [загальнодоступні]; PRIVATE поля; [приватні]; методи; [приватні]; PUBLIC поля; [загальнодоступні]; методи; [загальнодоступні]; END;
     

Поля і методи в оголошенні об’єктного типу можуть оголошуватися як скриті (private), або загальнодоступні( Public ). Частину полів і методів об'єктних типів можна оголосити як приховані.


Синтаксис оголошення:

Туре ObjectType = object Звичайні поля і методи Private Public Приховані поля і методи end;

Ідентифікатори полів і методів, оголошених як приховані, доступні (видимі) тільки в межах програми або модуля, в яких вони оголошені. Поза модулем з їх описом приховані поля і методи невідомі (недоступні). Сам об'єктний тип і його решта компонентів видима по звичайних правилах.

Приховані компоненти об'єктних типів аналогічні змінним розділу реалізації (implementation) модуля. Це дозволяє ізолювати (приховати) технічні подробиці реалізації об'єктів від програм-споживачів, сприяє більшій незалежності програмних одиниць і служить додатковим засобом контролю за використанням об'єктів.

Таким чином можна використати вище сказані директиви Private, Public. Type Dot= object Private a,b: integer; Public constructor Init (x, y: integer); procedure Show; virtual; Private procedure Hide; virtual; procedure Move (Dat, Db: integer); Public destructor Done end; В цьому прикалді в якості скритих обявлені поля a і b, а також методи Move і Hide. В той же час методи Init, Show і Done мають статус загальнодоступних. Поля і методи обєкта, оголошені після директиви Private, будуть доступні тільки в межах даної програми або модуля. Але якщо цей об’єкт міститься в підключеному до програми модулі, ідентифікатори скритих полів і методів будуть для програміста невидимі. При цьому сам об’єкт буде повністю відкритим для використання. Для чого це потрібно? Наприклад, якщо це комерційна програма, само-собою, що її автори обмежують доступ користувачів до деталей використання даної програми. В результаті програмою можна користуватися, але не можна модифікувати її.
     

 


1 | 2 | 3 | 4 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)