пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

I семестр:
» прг

Классы в языке С++

Концепция объектно-ориентированного программирования основана на понятиях объекта и класса. Каждый объект характеризуется присущими ему свойствами, методами (действиями, совершаемыми над ним) и событиями, на которые объект реагирует определенным образом - выполняет заданные действия. В языке С++ объекты - это переменные класса или структуры или, как принято говорить, конкрегные экземпляры класса или структуры. Классы и структуры определяют типы (категории) объектов, которые содержат как объявление данных , так и функции (методы) их обработки. Данные, объявленныеи в классе часто называют членами-данными, функции - членами функциями класса.

Пользователю, как правило, предоставляется описание класса - набор свойств, методов, событий, а не его реализация. Главная забота класса - скрыть как можно больше информации от пользователя, которая ему непосредственно не нужна. Это свойство, обычно называемое инкапсуляцией, накладывает ограничения на использование свойств и методов класса.

10.1 Управление доступом классу

Существует три категории пользователей класса: 

  • сам класс (члены-функции класса могут обращаться к другим членам-функциям или членам-данным); 
  • обычные пользователи, точнее программы пользователя; 
  • производные классы, точнее члены-функции производного класса, которые могут обращаться к членам-функциям или членам-данным базового(родительского) класса.

Каждый пользователь обладает разными привилегиями доступа. Каждый уровень доступа ассоциируется с определенным ключевым словом, а именно: private, public, protected.

Приватные члены класса, объявленные в секции private имеют наиболее ограниченную область действия. Обратите внимание, что приватные данные видимы, но недоступны в программе пользователя. Такой контроль введен для предотвращения нечаянного доступа к данным или внутренним функциям, в целях уменьшения ошибок при разработке программ, но не для предотвращения “взлома”.

Ко всему, что объявлено в секции public, разрешен неограниченный доступ. В частности, можно все содержимое класса объявить общедоступным и манипулировать им, как заблагорассудится.

При определении класса некоторые  члены-данные и члены-функции можно скрыть от пользователя, но сделать доступными для производных классов, поместив эти члены и функции в  protected-секцию.

По умолчанию секция класса (без явного указания спецификации public, private, protected) является private-секцией, а в структуре  - public-секцией. В этом заключается основное различие структур и классов.


20.08.2015; 01:17
хиты: 465
рейтинг:0
Гуманитарные науки
изобразительные искусства
каллиграфия
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь