Главная страница
Навигация по странице:

  • Основные принципы ООП

  • Активным

  • Сохраняемость

  • Описание классов

  • Состояние объекта

  • Курс ООП в С презентация. ООП в с++(полный курс). Объекты и классы


    Скачать 1.76 Mb.
    НазваниеОбъекты и классы
    АнкорКурс ООП в С презентация
    Дата21.02.2022
    Размер1.76 Mb.
    Формат файлаppt
    Имя файлаООП в с++(полный курс).ppt
    ТипДокументы
    #368655
    страница2 из 26
    1   2   3   4   5   6   7   8   9   ...   26

    Основные принципы ООП


    Под типизацией понимается способ защититься от использования объектов одного класса вместо другого, или, по крайней мере, управлять таким использованием. Тип определяют как точную характеристику свойств, включая структуру и поведение, относящуюся к некоторой совокупности объектов.
    Если стоит задача защититься от подмены понятий, например, когда одна функция в качестве параметра должна принимать значение целого типа, выражающее количество денежных средств, а ей передают значение целого типа, но выражающее количество человек в подразделении, следует вводить специальные типы вместо использования стандартного на все случаи жизни.
    Объявление, начинающееся с ключевого слова typedef в C++, вводит новое имя для типа, а не для переменной данного типа. Имена, вводимые typedef, являются синонимами, а не новыми типами.
    Преимущества сильной типизации:
      отсутствие контроля типов может приводить к загадочным сбоям в программах во время их выполнения;
      в большинстве систем процесс редактирование-компиляция-отладка утомителен, и раннее обнаружение ошибок просто незаменимо;
      объявление типов улучшает документирование программ;
      многие компиляторы генерируют более эффективный объектный код, если им явно известны типы.

    Основные принципы ООП


    Также типизация определяет время, когда имена связываются с типами.
    Статическая связь означает, что типы всех переменных и выражений известны во время компиляции; динамическое (или позднее) связывание означает, что типы неизвестны до момента выполнения программы.
    С понятием динамического связывания тесно связана концепция полиморфизма – возможность использовать в различных классах иерархии одно имя для обозначения сходных по смыслу действий и гибко выбирать требуемое действие во время выполнения программы.
    Параллелизм позволяет различным объектам действовать одновременно. Это свойство, отличающее активные объекты от пассивных.
    Активным называется объект, который может представлять собой отдельный поток управления (абстракцию процесса).
    Пассивный объект, напротив, может изменять свое состояние только под воздействием других объектов. Для систем, построенных на основе ООП, мир может быть представлен, как совокупность взаимодействующих объектов.
    Сохраняемость – это способность объекта существовать во времени, переживая породивший его процесс, и (или) в пространстве, перемещаясь из своего первоначального адресного пространства.


    Описание классов

    Описание классов


    В нотации UML класс обозначается в виде прямоугольника, разделенного на три части. В верхней содержится имя класса, в средней – его атрибуты (поля данных). В нижней части указываются методы класса, отражающие его поведение (то есть действия, выполняемые классом).

    Описание классов


    Описание класса в общем виде выглядит так:
    class <имя_класса>
    {
    [private:]
    <описание скрытых элементов>
    public:
    <описание доступных элементов>
    };
    Состояние объекта характеризуется перечнем (обычно неизменным) всех свойств данного объекта и текущими (обычно изменяемыми) значениями каждого из этих свойств. Тот факт, что всякий объект имеет состояние, означает, что всякий объект занимает определенное пространство (физически или в памяти компьютера).
    К числу свойств относятся присущие объекту или приобретаемые им характеристики, черты, качества или способности, делающие данный объект самим собой. Эти свойства принято называть атрибутами класса.

    Описание классов


    Атрибуты содержатся внутри класса, поэтому они скрыты от других классов. В связи с этим иногда требуется указать, какие классы имеют право читать и изменять атрибуты. Это свойство называется видимостью атрибута.
    У атрибутов и операций, в зависимости от их назначения и требований доступности, определяют следующие значения этого параметра:
      public(открытый). В этом разделе размещают атрибуты, доступные всем остальным классам. Любой класс может просмотреть или изменить их значением. В нотации UML такой атрибут обозначается знаком "+".
      private (закрытый). Такой атрибут не виден никаким другим классам, кроме дружественных. Закрытому атрибуту предшествует символ "–".
      protected (защищенный). Атрибуты этого раздела доступны только самому классу, его потомкам и друзьям (friend). Его признак – символ "#".

      Можно задавать несколько секций private и public, порядок их следования значения не имеет.
      Видимостью элементов класса можно также управлять с помощью ключевых слов struct и class. Если при описании класса используется слово struct, то все поля и методы по умолчанию будут общедоступными (public). Если при описании класса используется слово class, то по умолчанию все методы и поля класса будут скрытыми (private).
    1   2   3   4   5   6   7   8   9   ...   26


    написать администратору сайта