Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Блок 1 Программирование.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
295.81 Кб
Скачать

7. Освобождение ресурсов

Функция mysql_free_result () освобождает всю память, связанную с конкретным запросом.

Синтаксис функции

int mysql_free_result (int result)

private ClassB w;}

класс ClassB объявлен внутри класса ClassA, причем со словом private, так что его экземпляры мы можем создавать только внутри класса ClassA.

Public class сlassА

{

private

Public class сlassB

{

Private Int z;

private ClassB w;

}

}

Пример двух классов, А и B. class А public, class B private. В классе В создать переменную-экземпляр private w класса А

Наследование

Чтобы построить (в терминах данных или поведения) класс на основе другого класса, применяется наследование. Оно принадлежит к правилам заменяемости, а именно к тому, которое гласит, что производный класс может быть заменен базовым. Примером этого может служить написание иерархии классов базы данных. Допустим, вам был нужен класс для обработки баз данных Microsoft SQL Server и Oracle. Поскольку эти базы различны, вам понадобится по классу для каждой из БД. Однако в обеих БД достаточная доля общей функциональности, которую можно поместить в базовый класс, а два других класса сделать его производными, при необходимости подменяя или изменяя поведение, унаследованное от базового класса.class Database

{ public Database()

{ }

class SQLServer : Database

{ }

class Oracle : Database

{ } }

АБСТРАКТНЫЕ КЛАССЫ

Методы класса могут быть объявлены как абстрактные. Это означает, что в этом классе нет реализации этих методов. Абстрактные методы пишутся с модификатором abstract. Класс, в котором есть хотя бы один абстрактный метод, называется абстрактным (в таком классе могу быть и обычные методы). Нельзя создавать экземпляры абстрактного класса — такой класс может использоваться только в качестве базового класса для других классов. Для потомка такого класса есть две возможности — или он реализует все абстрактные методы базового класса (и в этом случае для такого класса-потомка мы сможем создавать его экземпляры), или реализует не все абстрактные методы базового класса (в этом случае он является тоже абстрактным классом, и единственная возможность его использования — это производить от него классы потомки).

abstract class Figure {          public abstract double square();     public abstract double perimeter();}

class Triangle: Figure {     double а, Ь, с;           public override double perimeter()     {         return a=b+c;     } }

  1. Объектно-ориентированное программирование средствами с#.

C# входит в новую версию Visual Studio - Visual Studio.NET.. Одна из причин разработки нового языка компанией Microsoft - это создание компонентно-ориентированного языка для новой платформы .NET. Другие языки были созданы до появления платформы .NET, язык же C# создавался специально под эту платформу и не несет с собой груза совместимости с предыдущими версиями языков. Концепция объектно-ориентированного программирования подразумевает, что основой управления процессом реализации программы является передача сообщений объектам. Поэтому объекты должны определяться совместно с сообщениями, на которые они должны реагировать при выполнении программы. В этом состоит главное отличие ООП от процедурного программирования, где отдельно определённые структуры данных передаются в процедуры (функции) в качестве параметров. Таким образом, объектно-ориентированная программа состоит из объектов – отдельных фрагментов кода, обрабатывающего данные, которые взаимодействуют друг с другом через определённые интерфейсы.

Объектно-ориентированный язык программирования должен обладать следующими свойствами:

  1. абстракции – формальное о качествах или свойствах предмета путем мысленного удаления некоторых частностей или материальных объектов;

  2. инкапсуляции – механизма, связывающего вмести код и данные, которыми он манипулирует, и защищающего их от внешних помех и некорректного использования;

public class A

{

public int a; // открытый интерфейс

public int b; // открытый интерфейс

public int ReturnSomething(); // открытый интерфейс

private int Aa = a; //безопасное использование открытого интерфейса

private int Ab = b; //безопасное использование открытого интерфейса

private void DoSomething(); // скрытый метод.

};

  1. наследования – процесса, с помощью которого один объект приобретает свойства другого, т.е. поддерживается иерархической классификации;

class A{ //базовый класс

};

class B : public A{ //public наследование}

class C : protected A{ //protected наследование

}

class Z : private A{ //private наследование

}

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

public class Worker : Man

{

//Виртуальный метод

public virtual void GiveMoney(int money)

{

Console.WriteLine("Получите " + money + " рублей");

}

}

public class Teacher : Worker

{

//Задаем необходимую функциональность

public override void GiveMoney(int money)

{

int bonus = 1000; //премиальные 1000 руб

money = money + bonus;

base.GiveMoney(money);

}

}