основы объектно-ориентированного программирования

PPTX 46 pages 472.5 KB Free download

Page preview (5 pages)

Scroll down 👇
1 / 46
старший преподаватель кафедры “основы информатики” лектор: саттаров акбар бахтиярович старший преподаватель кафедры “основы информатики” лектор: саттаров акбар бахтиярович лекция №8. основы объектно-ориентированного программирования ташкентский университет информационных технологий имени мухаммада ал-хоразмий объектно-ориентированное программирование (oоп) (ооп) – это новый подход к программированию. развитие вычислительной техники и усложнение решаемых задач есть причина появления различных моделей (парадигмы) программирования. в первых компиляторах (например, язык fortran) поддерживалась модель процедуры основанную на использование функций в программировании. с помощью этой модели программист мог написать программу состоящая из нескольких строк. на следующим этапе развития программ появилось их структурная модель и проявляются на компиляторах языка algol, pascal и с. особенность структурного программирования – это процедуры (блоки) связанные между собой в программе и комплекс знаков их обработки. созданная программа легко проходит переработку и контроль чем процедурная модель. 2 класс класс, определяет строгую связь между объектом того же типа с внешним миром. элементу закрытого уровня доступа можно обращаться только внутри класса. с …
2 / 46
обходимости пусть они будут. потому что является новое название заданного типа, при помощи него определяются объекты этого класса. функции и переменные объявленные внутри класса являются элементами этого класса. переменные объявленные внутри класса называются заданные-элементы, а функции элементами–функции. пример объявления класса class класс_1 { // закрытый элемент класса int a; public: int get_a(); void set_a(int _num); }; параметры класса несмотря на объявление функций int get_a() и void set_a(int_num) внутри класса класс_1, они еще не определены. определение функции осуществляется по названию класса и знак «::». здесь «::» – называется задачей расширения области видения. определения элемента-функции выглядит следующим образом: :: ( ) { // тело функции } пример int класс_1 :: get_a() { return a; } void класс_1:: set_a(int num) {a=num;} объявление класса класс_1 не создает объекты класса того же типа. для создания объектов класса необходимоиспользовать название класса как спецификатор заданного типа. например, sinf_1 obj1,obj2; обращение к объектам класса после создания объекта класса …
3 / 46
) derived class (класс наследник). класс наследник может быть основным классом для другого класса. значит таким образом, появляется много степенное наследование (multiple inheritance). использование наследования после наследования какого то класса, элементы основного класса являются и элементами наследника. на языке программирования c++ общая форма наследования следующая: class названия-класса-наследника : access название-основного-класса { // тело класса наследник }; public protected private пример. пример на обычное наследование. программа возвращаемая значения отправленного при помощи объекта class base { int i, j; public: void set(int a, int b) { i=a; j=b; } void show() { cout using namespace std; class base1 { protected: int x; public: void showx() { cout vfunc(); // виртуальная функция vfunc() класса base // указатель на класс derived1 p = &d1; p->vfunc(); // виртуальная функция vfunc() класса derived1 // указатель на класса derived2 p = &d2; p->vfunc(); // виртуальная функция vfunc() класса derived2 return 0; } анализ примера по данной программе, …
4 / 46
ublic: virtual void vfunc() { cout vfunc(); // виртуальная функция vfunc() класса base // указатель на класс derived1 p = &d1; p->vfunc(); // виртуальная функция vfunc() класса derived1 // указатель на класс derived2 p = &d2; p->vfunc(); // виртуальная функция vfunc() класса derived2 return 0;} иерархические свойства виртуальных функций в основном классе создана виртуальная функция и его можно пере объявить (override) для класса наследника. если в классе наследника данная виртуальная функция не будет override? здесь объект класса наследника будет обращаться к виртуальной функции, то есть к виртуальной функции основного класса. рассмотрим следующий пример: пример class base { public: virtual void vfunc() { cout vfunc(); // виртуальная функция vfunc() класса base // указатель на класс derived1 p = &d1; p->vfunc();// вир. функция vfunc() класса derived1 // указатель на класс derived2 p = &d2; p->vfunc(); // вир. функция vfunc() класса derived2 return 0; } понятие абстрактного класса на языке c++ класс имеющий …
5 / 46
и какая она??? исправление ошибки предыдущего примера в этой программе есть ошибка: class base { public: int i; }; class derived1 : public base { public: int j; }; class derived2 : public base { public: int k; }; class derived3 : public derived1, public derived2 { public: int sum; }; derived3 ob; ob.derived1::i = 10; ob.j = 20; ob.k = 30; ob.sum = ob.derived2::i + ob.j + ob.k; при помощи знака :: какой класс надо было использовать? использование virtual base классов class base { public: int i; }; class derived1 : virtual public base { public: int j; }; class derived2 : virtual public base { public: int k; }; class derived3 : public derived1, public derived2 { public: int sum; }; derived3 ob; ob. i = 10; ob.j = 20; ob.k = 30; ob.sum = ob.i + ob.j + ob.k; в этом случаи программа будет работать правильно пример …

Want to read more?

Download all 46 pages for free via Telegram.

Download full file

About "основы объектно-ориентированного программирования"

старший преподаватель кафедры “основы информатики” лектор: саттаров акбар бахтиярович старший преподаватель кафедры “основы информатики” лектор: саттаров акбар бахтиярович лекция №8. основы объектно-ориентированного программирования ташкентский университет информационных технологий имени мухаммада ал-хоразмий объектно-ориентированное программирование (oоп) (ооп) – это новый подход к программированию. развитие вычислительной техники и усложнение решаемых задач есть причина появления различных моделей (парадигмы) программирования. в первых компиляторах (например, язык fortran) поддерживалась модель процедуры основанную на использование функций в программировании. с помощью этой модели программист мог написать программу состоящая из нескольких строк. на следующим этапе развития программ появи...

This file contains 46 pages in PPTX format (472.5 KB). To download "основы объектно-ориентированного программирования", click the Telegram button on the left.