1 / 15

Программирование на языке C#

Программирование на языке C#. Основы ООП. План занятия. Принципы ООП Абстрагирование Инкапсуляция Наследование Полиморфизм. Принципы ООП. Шесть принципов Алана Кея: Всё является объектом. Принципы ООП. Шесть принципов Алана Кея:

stella
Download Presentation

Программирование на языке C#

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Программирование на языке C# Основы ООП

  2. План занятия Принципы ООП Абстрагирование Инкапсуляция Наследование Полиморфизм

  3. Принципы ООП Шесть принципов Алана Кея: Всё является объектом.

  4. Принципы ООП Шесть принципов Алана Кея: 2. Каждый объект является представителем (экземпляром) класса, который выражает общие свойства объектов.

  5. Принципы ООП Шесть принципов Алана Кея: 3. В классе задаётся поведение (функциональность) объекта. Тем самым все объекты, которые являются экземплярами одного класса, могут выполнять одни и те же действия.

  6. Принципы ООП Шесть принципов Алана Кея: 4. Классы организованы в единую древовидную структуру с общим корнем, называемую иерархией наследования. Память и поведение, связанное с экземплярами определённого класса, автоматически доступны любому классу, расположенному ниже в иерархическом дереве.

  7. Принципы ООП Шесть принципов Алана Кея: 5. Каждый объект имеет независимую память, которая состоит из других объектов.

  8. Принципы ООП Шесть принципов Алана Кея: 6. Вычисления осуществляются путём взаимодействия (обмена данными) между объектами, при котором один объект требует, чтобы другой объект выполнил некоторое действие. Объекты взаимодействуют, посылая и получая сообщения. Сообщение — это запрос на выполнение действия, дополненный набором аргументов, которые могут понадобиться при выполнении действия.

  9. Абстрагирование Выделяете только те факторы, которые нужны для решения задачи Отсекайте все лишнее

  10. Инкапсуляция length r x, y а b c Пользователь (прикладной программист) не должен менять внутреннее состояние объекта – он не знает, как это делается!!! Поля и методы делятся на внутренние и интерфейсные.

  11. Объявление класса [атрибуты] [спецификаторы] classимя_класса [: предки] { [атрибуты] [спецификаторы] тип имя_поля [= значение]; [атрибуты] [спецификаторы] тип имя_метода(параметры) { тело метода } [атрибуты] [спецификаторы] тип имя свойства { [спецификаторы] get { тело } [спецификаторы] set { тело } } }

  12. Пример public classCircle { public double x public double y; private double r; public double R { get { return r; } set { if(value >= 0) r = value; } } public double GetLength() { return 2 * Math.PI * r; } }

  13. Спецификаторы доступа • Методы и поля • private (по умолчанию) • public • internal • static • protected (наследование) • protected internal (наследование) • abstract (только для методов, полиморфизм) • new (только для методов, наследование) • override (только для методов, полиморфизм)

  14. Спецификаторы доступа • Класс • internal (по умолчанию) • public • static • sealed (наследование) • abstract (полиморфизм)

More Related