Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 1 Классы в C по курсу Компонентные технологии программного обеспечения Цель раб

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 3.6.2024

Лабораторная работа № 1

Классы в C#

по курсу «Компонентные технологии программного обеспечения»

Цель работы

Изучить концепции описания классов в языке C#, которые не существуют в C++.

Порядок выполнения работы

  1. Реализуйте класс, удовлетворяющий следующим требованиям.
  2. Класс должен содержать минимум три поля различных элементарных типов данных.
  3. Напишите конструктор, инициализирующий все поля класса.
  4. Для каждого поля создайте соответствующее ему свойство доступное для чтения и записи. При записи значения в поле проверьте допустимость значения. Если значение является недопустимым, то сгенерируйте исключение типа ArgumentOutOfRangeException.
  5. Переопределите метод ToString(). Реализация этого метода должна преобразовать содержимое объекта класса в удобочитаемую строку.
  6. Реализуйте класс, который будет служить контейнером для класса, сознанного в п.1.
  7. Создать контейнер можно с использованием как обычного массива объектов так и с помощью стандартного класса контейнера.
  8. Класс контейнер должен реализовывать следующий интерфейс:

interface IContainer {

Object this[ int index ] {

 get;

 set;

}

}

Если при доступе к индексатору происходит обращение к несуществующему элементу, сгенерировать исключение IndexOutOfRangeException.

  1. Переопределите метод ToString(). Реализация этого метода должна преобразовать содержимое контейнера в строку, вызывая методы ToString() каждого из объектов, содержащихся в контейнере. Для реализации этого метода рекомендуется использовать класс System.Text.StringBuilder.

Каждый создаваемый класс или интерфейс должен находиться в отдельном *.cs файле вашего проекта. Имя файла должно совпадать с именем класса (интерфейса).

Создайте, несколько объектов класса и занесите их в объект класса контейнера. Распечатайте содержимое контейнера на экран с помощью ToString().

Содержание отчета

  1. Номер и название лабораторной работы, номер группы и ФИО студента.
  2. Цель работы.
  3. Постановка задачи.
  4. Краткие теоретические сведения о тех нововведениях описания классов языка C#, которые не существуют в C++.
  5. Текст программы и пример ее работы.
  6. Анализ результатов и выводы.

Контрольные вопросы

  1. Каковы преимущества языка C#?
  2. Что называется интерфейсом в языке C#? Для чего нужны интерфейсы?
  3. Каково назначение следующих модификаторов типов: abstract, sealed?
  4. Каково назначение следующих модификаторов методов: static, virtual, new, override, abstract, sealed?
  5. Каково назначение следующих модификаторов полей: static, readonly?
  6. Каково назначение следующих модификаторов доступа: public, private, protected, internal, protected internal?
  7. Что называется событием (event) в языке C#? Для чего нужны события?
  8. Что называется делегатами (delegate) в языке C#? Для чего нужны делегаты?
  9. Что называется и для чего используется конструктор типа?
  10. Каково назначение класса System.Object? Каково назначение открытых (Equals(), GetHashCode(), ToString(), GetType()) и защищенных(MemberwiseClone(), Finalize()) методов класса System.Object?
  11. Что такое элементарные типы языка C#? Каково назначение следующих типов: sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, bool, decimal, object, string?
  12. Каково назначение операторов is и as? Поясните работу этих операторов. Каково назначение класса InvalidCastException?
  13. Что такое checked и unchecked блоки? Как они работают и зачем они нужны?
  14. Каково назначение операторов explicit и implicit?
  15. Что такое размерные (value types) и ссылочные (reference types) типы?
  16. Что такое boxing и unboxing? Как работает boxing и unboxing?

Упражнения

  1. Приведите пример использования цикла foreach.
  2. Приведите пример использования конструкций throw, try-catch-finally.
  3. Приведите пример интерфейса для некоторого класса.
  4. Приведите пример использования события.
  5. Приведите пример использования делегата.
  6. Приведите пример использования операторов is и as.
  7. Приведите пример использования операторов explicit и implicit.

Литература

  1. Материалы лекций.
  2.  MSDN.



1. РЕФЕРАТ ДИСЕРТАЦІЇ на здобуття наукового ступеня кандидата юридичних наук КИЇВ ~
2. РЕФЕРАТ дисертації на здобуття наукового ступеня доктора педагогічних наук Київ ~ 2003 Дис
3. Логойск который отлично подходит как для профессионалов так и для новичков
4. Создание инструментов краудсорсинговой научно-технической, маркетинговой экспертизы проектов и инициатив Минобрнауки России
5. Будущее экологического образования некоторые предположения
6. Формы и методы воздействия государственных финансов на легкую промышленность
7. і ВСТУП Однією з основоположних цілей сучасного суспільства є формуванн
8. Инвестиции
9. Особенности проведения предварительного слушания Уголовное дело в котором участвует несколько подсуди
10. твердой спине он видел стоило ему приподнять голову свой коричневый выпуклый разделенный дугообразны
11. Наш мэр фраза выражавшая прежде не более чем уважительное отношение к председателю исполкома как челове
12. Про освіту- Метою освіти є виховання високих моральних якостей формування культури поведін
13. Music nd Bllet
14. Мировой город. Крупные миллионники мегалополисы
15. Описание некоторых жуков
16. Профилактика кариеса у детей в возрасте от 0 до 6 лет
17. Реферат- Киевская Русь
18. Жизнь и смерть Сперанского, великого управленца
19.  Кісткову провідність звука; 2
20. Разработка класса