Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 17
На сайте нет зарегистрированных пользователей

Пользователей: 13,361
новичок: uehuat
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Выбор наилучших альтернатив с использованием методов оптимизации на Delp...
Изменения контуров и сортировка в двумерном массиве чисел на Turbo Pasca...
База данных - словарь терминов на Delphi + Пояснительная записка

Объектно-ориентированный подход
Интерфейс vnode/vfs создан на основе концепций объектно-ориентированного программирования (ООП).

Также может иметь смысл заглянуть на сайт colortone.ru, ведь именно там можно узнать много нового на тему http://colortone.ru/index.php/arkhitekturnaya-plenka. Тема архитектурные пленки может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт colortone.ru, и тема архитектурные пленки начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема архитектурные пленки очень подробно представлена на сайте colortone.ru. Трудно найти более детальное освещение темы архитектурные пленки чем это сделано на сайте colortone.ru. Спасибо сайту colortone.ru за такое доскональное преподнесение темы архитектурные пленки.



Позже такой подход был использован и для других участков ядра UNIX, таких как управление памятью, коммуникации при помощи сообщений и планирование процессов. Ознакомимся вкратце с основами ООП в части применения для разработки ядра систем UNIX.

Такие технологии обычно реализуются при помощи объектно-ориентированных языков программирования типа C++, но разработчики UNIX выбрали для этого язык С из соображений единообразия с кодами остальной части ядра.



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


На основе любого класса можно создать один или более порожденных классов, называемых классами-наследниками

Класс-наследник сам по себе может являться базовым для последующих классов, порожденных от него.


Так формируется иерархия классов. Наследник приобретает все атрибуты (данные и функции) своего базового класса. Более того, в нем могут быть изменены некоторые функции базового класса, — таким образом, класс-потомок может обладать собственными реализациями этих функций.
Так как порожденный класс обладает всеми атрибутами базового класса, объект такого типа также является и объектом типа базового класса. Например, класс directory (каталог) может являться порожденным классом file (файла). Это означает, что любой каталог является и файлом. Конечно, обратное утверждение не будет верным: не каждый файл представляет собой каталог. Точно так же указатель на объект каталога является и указателем на объект файла. Атрибуты, добавленные в класс-наследник, невидимы базовым классом. Следовательно, указатель на базовый объект нельзя использовать для доступа к данным или функциям, специфичным для порожденного класса.


Часто базовый класс используется для задания основных абстракций и определения интерфейса.


Специфичные реализации функций для каждого члена класса оформляются в порожденных классах.

Таким образом, в классе file можно определить функцию create(), но при вызове ее пользователем для произвольного файла загрузятся различные процедуры в зависимости оттого, является ли файл обычным, каталогом, символической ссылкой, файлов устройства и т. д.


Мы вправе вообще не определять функцию
create()




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


Как уже упоминалось ранее, языки, такие как C++ или SmallTalk, обладают встроенными конструкциями для описания таких понятий, как классы или виртуальные функции. В языке С эти элементы приходится реализовывать самостоятельно. В следующем разделе мы расскажем об интерфейсе vnode/vfs, в основу которого положен объект- но-ориентированный подход.
Опубликовал katy July 08 2015 08:51:18 · 0 Комментариев · 2525 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
BIOS
Email
«Философия» прогр...
Pro-Download Sys...
Система баннеро...
SMLPack v1.0
Animated Menus
Создание Web-сайт...
Как программирова...
База предприятий ...
Современное проек...
Delphi World 6.0
DS_Group
Игра змейка
MiniChat
TmxOutlookBarPro
ScrollCredit
Delphix Sample [И...
CodeGear RAD Stud...
Delphi 7: Для про...

Топ загрузок
Приложение Клие... 100772
Delphi 7 Enterp... 97809
Converter AMR<-... 20261
GPSS World Stud... 17014
Borland C++Buil... 14189
Borland Delphi ... 10267
Turbo Pascal fo... 7372
Калькулятор [Ис... 5972
Visual Studio 2... 5206
Microsoft SQL S... 3661
Случайные статьи
Фрикинг контроллер...
Элементы управлени...
Изучение средств D...
Это поможет избежа...
Создание поставщик...
Представления дере...
Palladium
Популярная механика
Использование аксе...
Официальный сайт к...
Категории компонентов
Проблема линкбайтинга
Определение параме...
Синтаксис - МПролог
Структура seg и ук...
ГЛАВА 7. ЕЩЕ НЕСК...
Как только пакеты ...
Поиск и устранение...
Недостатки систем ...
Какие возможности ...
Сбор метаданных и ...
Коллекция объектов...
Создание простейше...
Стандартные подпро...
Как представить чи...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?