Скачать презентацию Microsoft Visual C NET Тема лекции Visual C Скачать презентацию Microsoft Visual C NET Тема лекции Visual C

Лекция8(dot net).ppt

  • Количество слайдов: 15

Microsoft Visual C#. NET Тема лекции: Visual C#. NET Введение в платформу. NET. Основы Microsoft Visual C#. NET Тема лекции: Visual C#. NET Введение в платформу. NET. Основы синтаксиса языка C#. NET. Лекцию ведет: Виденин Сергей Александрович Microsoft Visual Basic. NET

Архитектура. NET Framework Microsoft Visual Basic. NET C++ C# Microsoft JScript® … Framework Class Архитектура. NET Framework Microsoft Visual Basic. NET C++ C# Microsoft JScript® … Framework Class Library Common Language Runtime Windows Visual Studio®. NET Common Language Specification LINUX 2

Языки Visual Studio. NET § VB. NET § C# § C++ § Managed § Языки Visual Studio. NET § VB. NET § C# § C++ § Managed § Unmanaged § J# § JScript. NET § … 3

Классы и ООП Объектно-ориентированное программирование и проектирование построено на классах. Любую программную систему, выстроенную Классы и ООП Объектно-ориентированное программирование и проектирование построено на классах. Любую программную систему, выстроенную в объектном стиле, можно рассматривать как совокупность классов, возможно, объединенных в проекты, пространства имен, решения, как это делается при программировании в Visual Studio. Net. 4

Две роли классов У класса две различные роли: модуля и типа данных. Класс - Две роли классов У класса две различные роли: модуля и типа данных. Класс - это модуль, архитектурная единица построения программной системы. Модульность построения - основное свойство программных систем. В ООП программная система, строящаяся по модульному принципу, состоит из классов, являющихся основным видом модуля. Класс - это тип данных, задающий реализацию некоторой абстракции данных, характерной для задачи, в интересах которой создается программная система. 5

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

Синтаксис класса [атрибуты] [модификаторы] class имя_класса[: список_родителей] {тело_класса} Обычно класс имеет атрибут доступа public, Синтаксис класса [атрибуты] [модификаторы] class имя_класса[: список_родителей] {тело_класса} Обычно класс имеет атрибут доступа public, являющийся значением по умолчанию. Так что в простых случаях объявление класса выглядит так: public class Rational {тело_класса} 7

Поля класса синтаксически являются обычными переменными (объектами) языка. Их описание удовлетворяет обычным правилам объявления Поля класса синтаксически являются обычными переменными (объектами) языка. Их описание удовлетворяет обычным правилам объявления переменных Поля характеризуют свойства объектов класса. 8

Доступ к полям Каждое поле имеет модификатор доступа, принимающий одно из четырех значений: public, Доступ к полям Каждое поле имеет модификатор доступа, принимающий одно из четырех значений: public, private, protected, internal. Атрибутом доступа по умолчанию является атрибут private. 9

Методы класса синтаксически являются обычными процедурами и функциями языка. Их описание удовлетворяет обычным правилам Методы класса синтаксически являются обычными процедурами и функциями языка. Их описание удовлетворяет обычным правилам объявления процедур и функций Методы содержат описания операций, доступных над объектами класса 10

Доступ к методам Каждый метод имеет модификатор доступа, принимающий одно из четырех значений: public, Доступ к методам Каждый метод имеет модификатор доступа, принимающий одно из четырех значений: public, private, protected, internal. Атрибутом доступа по умолчанию является атрибут private. Понятно, что класс, у которого все методы закрыты, абсурден, поскольку никто не смог бы вызвать ни один из его методов Как правило, у класса есть открытые методы, задающие интерфейс класса, и закрытые методы. 11

Методы-свойства Методы, называемые свойствами (Properties), представляют специальную синтаксическую конструкцию, предназначенную для обеспечения эффективной работы Методы-свойства Методы, называемые свойствами (Properties), представляют специальную синтаксическую конструкцию, предназначенную для обеспечения эффективной работы со свойствами. Перечислю пять наиболее употребительных стратегий: 1. чтение, запись (Read, Write); 2. чтение, запись при первом обращении (Read, Write-once); 3. только чтение (Read-only); 4. только запись (Write-only); 5. ни чтения, ни записи (Not Read, Not Write). 12

Статические поля и методы класса Не все поля отражаются в структуре объекта. У класса Статические поля и методы класса Не все поля отражаются в структуре объекта. У класса могут быть поля, связанные не с объектами, а с самим классом. Эти поля объявляются как статические с модификатором static. Статические поля доступны всем методам класса. 13

Статические поля и методы класса Аналогично полям, у класса могут быть и статические методы, Статические поля и методы класса Аналогично полям, у класса могут быть и статические методы, объявленные с модификатором static. Такие методы не используют информацию о свойствах конкретных объектов класса они обрабатывают общую для класса информацию, хранящуюся в его статических полях. 14

Конструкторы класса Конструктор - неотъемлемый компонент класса. Нет классов без конструкторов. Конструктор представляет собой Конструкторы класса Конструктор - неотъемлемый компонент класса. Нет классов без конструкторов. Конструктор представляет собой специальный метод класса, позволяющий создавать объекты класса. Одна из синтаксических особенностей этого метода в том, что его имя должно совпадать с именем класса. 15