Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Реализация Main()
Реализация Main()
Метод Main() класса Program запрашивает у пользователя абсолютное имя типа. После получения строковых данных они передаются методу Туре.GetType(), а извлеченный объект System.Type отправляется каждому из вспомогательных методов. Это повторяется до тех пор, пока пользователь не нажмет клавишу ‹Q›, чтобы завершить выполнение приложения.
// Здесь необходимо указать пространство имен отображения.
using System;
using System.Reflection;
...
static void Main(string[] args) {
Console.WriteLine("***** Добро пожаловать в MyTypeViewer! *****");
string typeName = ";
bool userIsDone = false;
do {
Console.WriteLine("nВведите имя типа");
Console.Write("или нажмите Q для выхода из приложения: ");
// Получение имени типа.
typeName = Console.ReadLine();
// Желает ли пользователь завершить работу приложения?
if (typeName.ToUpper() = "Q") {
userIsDone = true;
break;
}
// Попытка отображения типа.
try {
Type t = Type.GetType(typeName);
Console.WriteLine("");
ListVariousStats(t);
ListFields(t);
ListProps(t);
ListMethods(t);
ListInterfaces(t);
} catch {
Console.WriteLine("Извините, указанный тип не найден");
}
} while (userIsDone);
}
К этому моменту приложение MyTypeViewer.exe уже готово для тестового запуска. Запустите это приложение и введите следующие абсолютные имена (помните о том, что при используемом здесь варианте вызова Туре.GetType() строки имен оказываются чувствительными к регистру символов).
• System.Int32
• System.Collections.ArrayList
• System.Threading.Thread
• System.Void
• System.IO.BinaryWriter
• System.Math
• System.Console
• MyTypeViewer.Program
На рис. 12.2 показана информация для случая, соответствующего выбору типа System.Math.
Риc. 12.2. Отображение System.Math
- Реализация подгрузки содержимого
- Реализация групповых вызовов
- 9.4.1. Реализация графа в виде матрицы смежности
- Реализация языка SQL
- 9.2.1. Более строгая реализация стека
- 9.2 Реализация массива ftAID на платформе Windows NT
- MainWindow
- Реализация семафоров в Linux
- 16.8. Реализация отношений в Core Data
- Your Own Domain Name and Third-Party DNS
- Providing DNS for a Real Domain with BIND
- Providing DNS for a Real Domain