|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
06.02.2013, 00:18 | #11 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
Цитата:
|
|
06.02.2013, 00:20 | #12 | |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
Цитата:
Код:
Инкапсуляция - это механизм контроля за сложностью модели. Он избавляет от необходимости держать все детали модели в голове одновременно. И при этом позволяет над одной моделью работать множеству люде. "Классификация" - это способ самые различные объекты разделять на группы, по некоторым общим признакам. Практически на всех ООП языках, классификация осуществляется при помощи ключевого слова class, за которым следует описание свойств и умений объектов, которые будут пренадлежать данному классу. На языке с++ классифицировать объект можно так же ключевым словом struct. Однако, по правилу хорошего тона, структура описывает лишь строение объектов, а не их умения. |
|
06.02.2013, 00:22 | #13 | |
Linux C++ Qt ARM
Старожил
Регистрация: 30.11.2008
Сообщений: 3,030
|
Цитата:
Что касается ООП. Что есть объект? Это некое формальное представление явления или объекта еще чего-то. Оно имеет какие-то характеристики (грубо говоря - набор внутренних переменных) и поведение (грубо говоря - функции). Мы можем их классифицированатьпо поведению и по характеристикам, причем не имеет никакого значения знаем-ли мы их все или они от нас скрыты. Что бы отличить кошку и попугая (и соответственно отнести кошку к млекопитающим, а попугая к птицам) нам нам нет нужды скрывать их внутреннюю структуру (хотя она не обязательна, в данном случае). В основе классификации лежат сходства и/или различия в поведении и характеристиках, а не степень их закрытости и инкапсулированности. А теперь скажите, как вы будете классифицировать двух абстрактных животных, если от вас сокрыты все их свойства и поведения. По какому критерию вы их классифицировать будете?
Дилетант широкого профиля.
"Слова ничего не стоят - покажите мне код!" © Линус Торвальдс Последний раз редактировалось ROD; 06.02.2013 в 00:35. |
|
06.02.2013, 00:34 | #14 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
06.02.2013, 07:48 | #15 | |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
Молодой человек, сначала выучите предмет, а потом лезте со своими идеями к профессионалам. Извините за грубость, но Вы - дилетант.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
|
06.02.2013, 09:29 | #16 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
Наоборот. Сокрытие данных и инкапсуляция способствует классификации.
|
06.02.2013, 09:47 | #17 | ||
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
Цитата:
Круг - это тоже многоугольник, со своими свойствами. Цитата:
Создадим разные объекты разных классов: класс 'Матрица', класс 'Комплексные числа'. Для каждого из этих классов переопределим оператор '+'. Теперь мы можем создать полиморфные объекты (которые будут по-разному реагировать на сложение, поэтому и будут полиморфными): Код:
Код:
Последний раз редактировалось 8Observer8; 06.02.2013 в 11:25. Причина: Исправил по замечанию Abstraction #19 |
||
06.02.2013, 10:24 | #18 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
to _Bers
На модель катит. Но без сокрытия данных не будет правильной классификации. to ROD to Stilet Это неправильная классификация. Так как в жизни я не могу поменять что-то в кошке, чтобы она стала обладать свойствами собаки (то есть стала собакай). Есть свойства, которые отличают собак от кошек. Одно дело, когда мы договариваемся не трогать эти свойства. А другое, когда нам это непозволено (в этом случае будет правильная классификация). Так как концепция ООП об неизменении отличительных свойств (по которым мы классифицировали) будет выполнена и обеспечена средствами языка. Последний раз редактировалось 8Observer8; 06.02.2013 в 10:40. |
06.02.2013, 10:44 | #19 | ||
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
Цитата:
|
||
06.02.2013, 10:59 | #20 | |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 224
|
Цитата:
По-моему открытость методов какого-либо объекта мало связано с классификацией. То же понятие "точка" для геометрических фигур: Код:
------ Код:
Люди бывают 10 типов: те, кто понимают двоичную систему счисления, и те, кто не понимают...
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Инструкция по созданию заготовки для 2D игр (для начинающих) | 8Observer8 | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 32 | 22.05.2024 17:55 |
C++ для начинающих | a_Alise | Помощь студентам | 2 | 27.03.2016 10:00 |
C++ для начинающих | Haruko_ | Помощь студентам | 0 | 23.10.2012 21:41 |
С++ для начинающих | Maxim1 | Общие вопросы C/C++ | 10 | 31.05.2010 00:22 |