Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контроль доступу

Інкапсуляція забезпечується наступними засобами

Методи

Поля даних

Особливості реалізації

Як вже говорилося вище , в сучасних об'єктно- орієнтованих мовах програмування кожен об'єкт є значенням , що належать до певного класу. Клас являє собою оголошений програмістом складовою тип даних , що має в складі :

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

Процедури і функції , пов'язані з класом. Вони визначають дії , які можна виконувати над об'єктом такого типу , і які сам об'єкт може виконувати.

Класи можуть успадковуватися один від одного. Клас - нащадок отримує всі поля і методи класу -батька , але може доповнювати їх власними або перевизначати вже наявні . Більшість мов програмування підтримує тільки одиничне успадкування (клас може мати тільки один клас-батько ) , лише в деяких допускається множинне спадкування - породження класу від двох або більше класів - батьків. Множинне успадкування створює цілий ряд проблем , як логічних , так і чисто реалізаційних , тому в повному обсязі його підтримка не поширена. Замість цього в 1990 -і роки з'явилося і стало активно вводитися в об'єктно - орієнтовані мови поняття інтерфейсу . Інтерфейс - це клас без полів і без реалізації , що включає тільки заголовки методів . Якщо якийсь клас успадковує (або , як кажуть , реалізує ) інтерфейс , він повинен реалізувати всі вхідні в нього методи . Використання інтерфейсів надає відносно дешеву альтернативу множинного спадкоємства .

Взаємодія об'єктів в абсолютній більшості випадків забезпечується викликом ними методів один одного.

Оскільки методи класу можуть бути як чисто внутрішніми , що забезпечують логіку функціонування об'єкта , так і зовнішніми , за допомогою яких взаємодіють об'єкти , необхідно забезпечити прихованість перших при доступності ззовні другий . Для цього в мови вводяться спеціальні синтаксичні конструкції , явно задають область видимості кожного члена класу. Традиційно це модифікатори public , protected і private , що позначають , відповідно, відкриті члени класу , члени класу , доступні тільки з класів - нащадків і приховані , доступні тільки усередині класу. Конкретна номенклатура модифікаторів і їх точний зміст різняться в різних мовах.
методи доступу
Поля класу , в загальному випадку , не повинні бути доступні ззовні , оскільки такий доступ дозволив би довільним чином змінювати внутрішній стан об'єктів. Тому поля зазвичай оголошуються прихованими ( або мова в принципі не дозволяє звертатися до полів класу ззовні ) , а для доступу до знаходяться в полях даними використовуються спеціальні методи , звані методами доступу . Такі методи або повертають значення того чи іншого поля , або роблять запис в це поле нового значення. При записи метод доступу може проконтролювати допустимість записуваного значення і, при необхідності , провести інші маніпуляції з даними об'єкта , щоб вони залишилися коректними ( внутрішньо узгодженими ) . Методи доступу називають ще аксессор (від англ. Access - доступ) , а окремо - геттеров (англ. get - читання ) і сетерами (англ. set - запис).


Читайте також:

  1. III. Контроль знань
  2. III. КОНТРОЛЬ і УПРАВЛІННЯ РЕКЛАМУВАННЯМ
  3. POS -Інтелект - відеоконтроль касових операцій
  4. VII Контроль постачальника
  5. Акустичний контроль приміщень через засоби телефонного зв'язку
  6. Банківський контроль та нагляд: форми та мета здійснення. Пруденційний нагляд: поняття, органи та мета проведення.
  7. Біохімічний контроль за розвитком систем енергозабезпечення
  8. Бюджетний контроль - це порівняння показників бюджету зі звітом за від­повідний період часу.
  9. Бюджетний контроль на місцевому рівні
  10. Валютний контроль
  11. ВАРІАНТИ КОНТРОЛЬНИХ РОБІТ
  12. Ветеринарно-санітарний контроль кормів і води




Переглядів: 692

<== попередня сторінка | наступна сторінка ==>
Визначити ООП можна і багатьма іншими способами. | Лекція 16

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.002 сек.