C/C++

Вопрос к экзамену по ООП.

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

"Свойства ООП" - это, скорее всего, классическая тройка: наследование (свойств и поведения класса-предка), полиморфизм (изменение потомком поведения предка) и инкапсуляция (сокрытие внутренних механизмов функционирования обекта).
Arsen Karasov
Arsen Karasov
72 869
Лучший ответ
Абстрактные классы - это метод повышения абстракции. Это такие классы, у которых ни один метод не определён, а только объявлен (декларирован).
В других ЯП, отличных от С++, абстрактные классы могут называться по другому, например, "интерфейсы", как в Object Pascal(Delphi).
Что-то ещё выше пока не придумали.
Чтобы ты понимал, уровень абстракции зависит от положения класса в иерархии. Самый главный, если я правильно помню, это Object. Его абстракция выше остальных. Он способен принимать любое значение, т к все классы наследуются от него.
Что же касаемо свойств, то товарищ выше уже указал их.
Бля. Не лезь в это сраное ООП по всяким пустякам
Ну вот есть методы. Там названия нормальные. Или один метод - одна задача. Или разбиение на мелкие методы. Или скрытие ненужных снаружи членов. В общем чепуха это всё. Я лично всё в мейне пишу, в ВУЗе херне научат тебя как обычно.