Объект - Черный ящик
Чтобы вам лучше было представить себе объект, я попытаюсь использовать пример не связанный с программированием, с которым сопоставить термины из программирования. Представьте себе черный ящик. Да-да, обычный такой черный ящик, совсем черный и совсем ящик. С точки зрения программирования это объект. Но, что же тогда является классом, если ящик-объект? Класс в данном случае - это чертеж, по которому строится этот ящик. Теперь подумаем, что может относится к этому черному ящику. Совершенно очевидно, что у этого черное ящика есть некоторые свойства. Во-первых его форма, а во вторых то, что в нем лежит и механизм с помощью которого он закрывается и открывается и с помощью которого содержимое из него извлекается. В программировании свойства так и называются - свойства, вот видите, какая-то логика все-таки есть. А способы извлечения содержимого, применимые к этому ящику - это методы В программировании с помощью свойств мы работаем с внутренними данными, читаем и устанавливаем значения, а методы - это те действия, которые может выполнять сам объект, то есть в нашем примере, мы нажимаем кнопку на ящике, которая "вызывает метод" - открыть ящик и ящик открывается самостоятельно. Это очень важное понятие, которое, по неизвестным причинам, очень с большим трудом усваивается начинающими программистами, поэтому я позволю себе повториться - метод, это действие, принадлежащее объекту и выполняемое самим объектом.
Очевидно, что форма ящика - неизменяемое в процессе его существования свойство, в терминах ООП оно называется статическим свойством и одинаково для всех экземпляров класса (ящиков, сделанных по одному чертежу). Не статическое свойство - это содержимое, которое можно легко извлечь и заменить (или не очень, особенно если ящик заперт на ключ). В программировании - статическое свойство принадлежит всем объектам и, например, если мы изменяем статическое свойство одного объекта, оно меняется для всех (на самом деле это свойство "определено и существует" в единичном экземпляре и используется всеми объектами одного типа, то есть порожденных из одного класса). Это еще не все, содержимое ящика, как я уже сказал, может быть заперто на ключ и доступно только из самого ящика, в терминах ООП это называется закрытые или приватные (private) данные.А все, что доступно извне называется открытыми или публичными (public) данными. Теперь напишем программный код, представляющий собой наш черный ящик:
Public Class BlackBox
End Class
Вот и весь код. Ничего страшного в нем нет. Слово Public означает, что наш класс доступен из любого внешнего модуля. Пока нам не нужно знать, зачем это, поэтому прошу не обращать внимания. Когда придет время, я объясню и это. Мы создали пустой класс черного ящика, не содержащий ни методов, ни свойств. Теперь заполним его содержимым.
Public Class BlackBox
Private mBoxName As String
Private mBoxContent As String
Public Property Content() As String
Get
Return mBoxContent
End Get
Set(ByVal Value As String)
mBoxContent = Value
End Set
End Property
Public Property Name() As String
Get
Return mBoxName
End Get
Set(ByVal Value As String)
mBoxName = Value
End Set
End Property
Public Function OpenBox(ByVal DropContent As Boolean)
' реализация
End Function
End Class
Поясню - мы создали класс черного ящик, обладающий свойствами: Name - название ящика, Content - описание содержимого ящика. Значения этих свойств хранятся во внутренних переменных mBoxName и mBoxContent, недоступных извне нашего объекта. OpenBox - метод, открывающий ящик, которому передается параметр - нужно ли выбросить содержимое после открытия или нет. Теперь у нас есть класс и из него можно начать создавать объекты.
- Позиционные системы счисления
- Смешанные системы счисления
- Системы счисления разных народов Древнеегипетская система счисления
- Римская система счисления
- 4. Логические (функциональные) схемы
- Виды высказываний
- История
- [Править]Централизованные вычисления
- [Править]Конструкторы и самодельные компьютеры
- [Править]Первые фирменные домашние пк
- [Править]Amiga и Macintosh
- [Править]Windows 95, мультимедийные возможности пк
- [Править]Один компьютер — один хозяин
- [Править]Продажи во всём мире
- [Править]Отечественные персональные компьютеры
- Разновидности устройств ввода
- 1.2 Устройства ввода-вывода
- Информация ввод вывод интерфейс
- Устройства ввода текста, графики и команд
- Клавиатура
- Плазменные мониторы
- Классификация по
- Системное по Прикладное по Инструментальное по
- Операционные системы
- [Править]Функции ос
- [Править]Понятие операционной системы
- [Править]Основные идеи ос
- [Править]Встроенные программы
- [Править]Утилиты
- [Править]Утилиты используются для
- [Править]Типы утилит
- [Править]Системы программирования
- [Править]Системы управления базами данных
- 16 Системы программирования
- Классификация По типу
- По сфере применения
- 19 История компьютерной вирусологии
- Создание вирусов и его причины
- [Править]Каналы
- -Профилактические меры, позволяющие уменьшить вероятность заражения вирусом;
- 1. В сфере оборота компьютерной информации:
- 3. В сфере информационного оборудования:
- 4. В сфере защиты охраняемой законом информации:
- 5. В сфере информационных правоотношений:
- 6. В сфере экономики и компьютерной информации:
- Графические интерфейсы и расширения для dos
- Семейство Windows 9x
- [Править]Семейство Windows nt
- Интегрированные программные продукты
- Основные стандартные утилиты Windows xp (программы из группы стандартные)
- Классификация файловых систем
- Задачи файловой системы
- 27 Окна Windows
- Диалоговые окна
- Управление меню
- Обозначения, принятые в меню
- Главное меню
- Контекстное меню
- Строка меню окна
- Системное меню
- История
- Состав программного продукта
- Виды баз данных
- [Править]Классификация по модели данных
- [Править]Классификация по среде постоянного хранения
- [Править]Классификация по содержимому
- [Править]Классификация по степени распределённости
- [Править]Другие виды бд
- 37 Работа с базой данных на примере программы "Аксес" ("Access")
- Разработка базы данных
- История
- Основы алгоритмизации
- 43 Понятие о системе программирования
- 46 Ооп. Давайте знакомиться
- Объект - Черный ящик
- Создание, жизнь и смерть объектов
- Переопределение (перегрузка) методов
- Наследование
- 1.3. Выражения и операции.
- 1.4. Операторы
- 50 Функции ввода и вывода
- 0 2 4 6 8 10
- Технологии повлиявшие на развитие компьютерных сетей
- Системы пакетной обработки
- Многотерминальные системы — прообраз сети
- Первые глобальные компьютерные сети
- Первые локальные компьютерные сети
- Компьютерные сети сегодня
- Классификация [править]По территориальной распространенности
- [Править]По типу функционального взаимодействия
- Достоинства
- [Править]Недостатки
- Достоинства
- [Править]Недостатки
- Достоинства
- [Править]Недостатки
- История
- Особенности Интернета
- Система адресации в интернет
- Что ищем?
- [Править]Где ищем?
- [Править]Как ищем?
- Протоколы получения почты
- [Править]pop3
- [Править]imap
- [Править]Различия
- Введение
- [Править]Устройство
- [Править]Опции
- Структура и принципы Всемирной паутины
- 59 Влияние компьютера на организм человека.
- 60 Эргономика рабочего места