- •1.Технология .Net Framework
- •6. В чем отличие платформы . Net от стандартного подхода к разработке программ.
- •7. Алфавит и лексемы языка программирования с#.
- •8. Типы данных в .Net Framework.
- •9. Переменные типа ссылки. Пример использования.
- •10. Инициализация переменных, констант. Специальные символы при инициализации строк.
- •11. Область видимости переменных.
- •12. Именование переменных.
- •14. Явное и неявное преобразование типов данных.
- •15. Ввод с клавиатуры. Преобразование строк в числа.
- •16. Перечислимые типы.
- •17. Структуры.
- •18.Структура if.
- •19. Структура switch.
- •20. Цикл while.
- •21. Оператор do.
- •22. Оператор for.
- •23. Оператор foreach.
- •24.Оператор goto.
- •25. Операторы break и continue.
- •26. Понятие исключения.
- •27. Перехват исключений.
- •28. Бросание исключений.
- •29. Определение массива. Объявление, инициализация.
- •30. Доступ к элементам массива.
- •31.Основные свойства и методы массивов.
- •32.Коллекции. Их виды.
- •33. Методы в с#
- •34. Вызов метода
- •35. Возврат из метода. Возврат значений из метода.
- •36. Параметры методов. Передача параметров по значению. Передача параметров по ссылке.
- •37. Понятие ооп. Классы и объекты
- •38. Основные три принципа ооп.
- •39. Понятие конструктора. Параметры конструктора
- •40. Понятие деструктора.
- •41. Управление памятью. Алгоритм работы Garbage Collector.
- •42 Управление доступом к элементам сущности.
- •43 Интерфейсы. Правила использования интерфейсов.
- •44 Абстрактные классы
- •45. Класс Random. Основные методы класса System.Random.
- •46 Математические функции – класс Math. Основные методы класса System.Math.
- •47 Пространства имен. Использование пространства имен.
- •48 Операции над строками. Основные элементы класса System.String.
- •49 Работа с символами в с#. Основные методы класса System.Char.
- •50. Классы .Net для работы с файлами. Основные классы пространства имен System.Io.
- •51. Структыры
- •52. Перечисления
- •53. Основные понятия ооп.
- •54. Конструкторы. Параметр this. Ключевое слово this.
- •55. Интерфейсы. Правила использования.
- •56. Семейства и индексаторы. Интерфейсы для работы с семействами.
- •57.Делегаты. Операции с делегатами. Использование делегатов.
- •58. Сборки и библиотеки. Атрибуты, директивы сборки.
43 Интерфейсы. Правила использования интерфейсов.
Интерфейсы в C# исполняют роль соглашений.
В терминологии программирования интерфейс похож на класс, за исключением того, что ни один из его членов не реализован. Интерфейс группирует методы, свойства, события и индексаторы. Для него нельзя создать экземпляр: все что он содержит, - сигнатуры своих членов, причем таковыми могут быть только указанные четыре типа членов.
Интерфейс не имеет конструкторов и полей. Интерфейс не может иметь перегруженных операций.
Интерфейс объявляется практически также как класс, за исключением того, что его члены не имеют реализации (наподобие абстрактных методов). Отсутствие реализации и модификаторов доступа.
Пример реализации интерфейса:
interface IEnumerator
{// свойства
object Current { get; }
// методы
bool MoveNext();
void Reset();} ...
public class myClass : IEnumerator, IConvertible {
Интерфейс IEnumerator важен для реализации коллекций и разработан для инкапсуляции функций перемещения по элементам коллекций (System.Collections) и разработан для инкапсуляции функций перемещения по элементам коллекции.
Класс реализует интерфейс, наследуя его обеспечивая реализации всех членов, объявленных в этом интерфейсе. Класс может наследовать любое количество интерфейсов.
Убедиться в том, что класс реализует интерфейс можно с помощью ссылки на этот интерфейс.
IMyEnumerator my = new myClass();
my.MoveNext();
Интерфейсы могут наследоваться друг от друга точно также, как и классы.
interface IMyEnumerator : IDisposable
44 Абстрактные классы
Ключевое слово abstract позволяет создавать классы и члены классов, которые являются неполными и должны быть реализованы в производном классе.
Классы могут быть объявлены абстрактными путем помещения ключевого слова abstract перед определением класса. Пример.
public abstract class A
{// Class members here.}
Создавать экземпляры абстрактного класса нельзя. Назначение абстрактного класса заключается в предоставлении общего определения для базового класса, которое могут совместно использовать несколько производных классов.
Абстрактные классы могут определять абстрактные методы. Для этого перед типом возвращаемого значения метода необходимо поместить ключевое слово abstract. Пример.
public abstract class A
{public abstract void DoWork(int i);}
Абстрактные методы не имеют реализации, поэтому определение такого метода заканчивается точкой с запятой вместо обычного блока метода. Классы, производные от абстрактного класса, должны реализовывать все абстрактные методы. Если абстрактный класс наследует виртуальный метод из базового класса, абстрактный класс может переопределить виртуальный метод с помощью абстрактного метода.
45. Класс Random. Основные методы класса System.Random.
класс Random представляет генератор псевдослучайных чисел, устройство, которое выдает последовательность чисел, отвечающую определенным статистическим критериям случайности.
Методы:
Equals(Object) Определяет, равен ли заданный объект Object текущему объекту Object..)
Finalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
GetHashCode Играет роль хэш-функции для определенного типа.
GetType Возвращает объект Type для текущего экземпляра.
Next Возвращает неотрицательное случайное число.
Next(Int32) Возвращает неотрицательное случайное число, не превышающее максимально допустимое значение.
Next(Int32, Int32) Возвращает случайное число в указанном диапазоне.
NextBytes Заполняет элементы указанного массива байтов случайными числами.
NextDouble Возвращает случайное число в диапазоне 0,0 и 1,0.
Sample Возвращает случайное число в диапазоне 0,0 и 1,0.
ToString Возвращение строки, представляющей текущий объект. (Унаследовано от Object.)