- •2. Основы языка c#
- •2.1. Основные элементы языка c#
- •2.1.1. Переменные и константы
- •2.1.2. Модификаторы доступа
- •2.1.3. Присваивание значений переменным
- •2.2. Типы данных
- •2.2.1. Значащие и ссылочные типы
- •2.2.2. Таблица типов данных
- •2.2.3. Приведение и преобразование типов
- •2.2.4. Совместимость типов
- •2.2.5. Методы преобразования типа
- •2.3. Общая структура программы на c#
- •Interface iYourInterface // определение интерфейса
- •2.3.1. Метод Main() и аргументы командной строки
- •2.3.2. Пространства имен
- •2.4. Выражения и операции
- •2.7. Методы класса System.Match
- •2.8. Методы класса System.Random
2.3. Общая структура программы на c#
Скелетная структура программы C#.
using System; // объявление ссылки на пространство имен
namespace YourNamespace // определение пространства имен
{ class YourClass // объявление класса
{ ...
}
struct YourStruct // определение структуры
{ ...
}
Interface iYourInterface // определение интерфейса
{ ...
}
delegate int YourDelegate(); // объявление делегата
enum YourEnum // объявление перечисления
{ ...
}
namespace YourNestedNamespace // определение пространства имен
{ struct YourStruct // определение структуры
{ ...
}
}
class YourMainClass // определение класса
{ static void Main(string[] args) // определение метода Main
{ // Ваша программа начинается здесь...
}
}
}
2.3.1. Метод Main() и аргументы командной строки
Пример использования метода Main:
class TestClass
{ static void Main(string[] args)
{ // Отображение числа параметров командной строки:
System.Console.WriteLine(args.Length);
}
}
2.3.2. Пространства имен
Таблица 2.5. Некоторые пространства имен .NET Framework
Пространство имен |
Назначение |
System |
Корневое пространство имен, содержащее класс Object и множество низкоуровневых классов для работы с простыми типами, выполнения математических операций, сбора мусора и т.п. |
System.Collections |
Контейнерные классы, такие как ArrayList, Queue, Stack, SortedList и т.п. |
System.Data System.Data.Common System.Data.OleDb System.Data.SqlClient |
Классы этих пространств предназначены для работы с базами данных |
System.Drawing System.Drawing.Drawing2D System.Drawing.Printing |
Классы для примитивов графического интерфейса – растровых изображений, шрифтов, значков, поддержки печати |
System.IO |
Классы, отвечающие за операции ввода-вывода |
System.Net |
Классы, отвечающие за передачу данных по сети (запрос-ответ, создание сокетов и т.п.) |
System.Security |
В этом пространстве имен собраны классы, использующиеся для повышения безопасности при передаче данных (работа с разрешениями, криптография и т.п.) |
System.Threading |
Это пространство имен для классов, которые работают с программными потоками, такими как Mutex, Thread, Timeout и т.п. |
System.Web |
Классы, используемые в веб-приложениях |
System.Windows.Forms |
Классы для работы с элементами интерфейса Windows – окнами, элементами управления и т.д. |
Syste.XML |
Множество классов для работы с данными в формате XML |
Использование оператора using для объявления ссылки на пространство имен:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
Пример задания пространства имен (Drawing) в операторе using:
using System.Drawing; // Явно ссылаемся на пространство имен
class myClass
{ public void DoIt()
{ // Создаем изображение 20 на 20 пикселей
Bitmap bm = new Bitmap(20, 20);
...
}
}
Можно указывать составное имя класса:
class myClass
{ public void DoIt()
{ // Создаем изображение 20 на 20 пикселей
System.Drawing.Bitmap bm = new System.Drawing.Bitmap(20, 20);
...
}
}
