Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
веб.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
933.89 Кб
Скачать

3.2.6 Метод Main (). Консольний ввід-вивід. Коментарі.

Метод Main ()

Всі програми на С # починають виконуватися з методу по імені Main (). Це повинен бути статичний метод класу (або структури), який повертає або значення типу int, або void. Хоча нерідко модифікатор public вказується явно, оскільки за визначенням цей метод повинен бути викликаний ззовні програми, насправді неважливо, який рівень доступу матиме метод точки входу. Він запуститься, навіть якщо буде помічений як private.

Коли компілюється програма С #, за замовчуванням компілятор шукає в точності один метод Main () з описаною вище сигнатурою в будь-якому класі і робить його точкою входу в програму. Якщо існує більше одного методу Main(), компілятор повертає повідомлення про помилку. Тим не менш, можна явно вказати компілятору, який з цих двох методів повинен використовуватися в якості точки входу програми, задавши при компіляції опцію / main разом з повним ім'ям (включаючи простору імен) класу, до якого належить метод Main().

При виклику програми можна змусити CLR передати програмі будь-які аргументи командного рядка, включивши параметр. Цей параметр представляє

собою масив рядків, традиційно іменований args (хоча в С # допускається будь-яке ім'я). Програма може використовувати цей масив для доступу до будь-яких опцій, переданих їй при запуску через командний рядок.

Консольне введення-виведення

Для читання стрічки тексту з консольного вікна використовується метод Console.ReadLine(). Він читає вхідний потік (перерваний натисканням клавіші <Enter>) з вікна консолі і повертає введену стрічку. Є також два відповідних методи для запису на консоль:

        Console.Write() - пише задане значення в консольне вікно;

        Console.WriteLine() - робить те ж саме, але додає символ нового рядка в кінець виводу.

Існують різні форми (перегрузки) цих методів для всіх зумовлених типів (включаючи object), тому в більшості випадків немає необхідності перетворювати значення в рядки перед їх відображенням. Console.WriteLine() також дозволяє відображати форматований вивід. Щоб використовувати Console.WriteLine() подібним чином, передаються декілька параметрів. Першим йде рядок, що містить маркери в фігурних дужках, які вказують, куди будуть вставлені наступні параметри. Кожен маркер містить індекс (починаючи з нуля), що вказує номер параметра з наступного списку.

int i = 10;

int j = 20;

Console.WriteLine ("{0} додати {1} дорівнює {2}", i, j, i + j);

Можна також додавати рядок формату разом з необов'язковим значенням. Привести повний список допустимих рядків формату нереально.

 

3.3Об’єкти і типи

 

Класи і структури - це, по суті, шаблони, за якими можна створювати об'єкти. Кожен об'єкт містить дані і методи, що маніпулюють цими даними.

Клас визначає, які дані і функціональність може мати кожен конкретний об'єкт (званий екземпляром) цього класу.

Структури відрізняються від класів тим, як вони зберігаються в пам'яті і як до них здійснюється доступ (класи - це типи посилань, що розміщуються в купі, структури - типи значень, які розміщуються у стеку), а також деякими властивостями (наприклад, структури не підтримують наслідування). З міркувань продуктивності використовуються структури для невеликих типів даних. Однак у відношенні синтаксису структури дуже схожі на класи. Головна синтаксична відмінність полягає в тому, що при їх оголошенні використовується ключове слово struct замість class.

При створенні як класів, так і структур використовується ключове слово new для оголошення екземпляру. У результаті об'єкт створюється і ініціалізується.

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]