Рефакторинг классов и типов (конструктор классов)
При оптимизации кода происходит изменение его внутренней структуры и, в особенности, создаваемых объектов. Оптимизация проводится для того, чтобы сделать код более понятным, управляемым и эффективным без видимого изменения поведения программы.При использовании конструктора классов и окно " сведения о классе ", чтобы выполнить рефакторинг кода, можно уменьшить вероятность ввода и трудозатраты, необходимые для дефектов кода во время операции.
Примечание |
---|
Файлы проекта могут быть доступны только для чтения, поскольку проект либо находится под системой управления версиями и не извлечен, либо является проектом, на который существует ссылка, либо файлы проекта помечены как доступные только для чтения файловой системой.При работе с проектом, находящимся в одном из вышеуказанных состояний, необходимо ознакомиться с несколькими способами сохранения проекта в зависимости от его состояний.Это условие применяется к рефакторинг кода, а также коду, который изменяется в другом случае в качестве непосредственного редактирования.Дополнительные сведения см. в разделе Display of Read-Only Information. |
Общие задачи
Задача |
Справочные материалы |
---|---|
Рефакторинг классов:Можно использовать операции рефакторинга для разделения класс в разделяемые классы или реализовать абстрактный базовый класс. |
|
работа с интерфейсами:В конструкторе классов можно реализовать интерфейс на схеме классов путем подключения к классу, который приводится код для методов интерфейса.При использовании Visual C#можно также извлекать одну или несколько открытых членов из типа в новый интерфейс. |
|
Типы рефакторинга, члены типа и параметры.С помощью конструктора классов можно легко вносить изменения, как переименовать тип или члены типа.Можно переопределить элементы типа, либо переместить их из одного типа в другой.Можно создать легко создать тип, допускающий значение null.И при использовании Visual C#можно изменить порядок параметров метода. |
Реализация абстрактных базовых классов
Для реализации абстрактных классов можно использовать конструктор классов.
При выполнении данной процедуры предполагается следующее:
проект содержит абстрактный класс;
абстрактный класс содержит абстрактные члены;
абстрактный класс является базовым классом в отношении наследования с другим классом.(Производный класс не должен быть абстрактным классом.)
Реализация абстрактного класса
- Щелкните правой кнопкой мыши производный класс, нажмите кнопку IntelliSense нажмите кнопку Реализовать абстрактный класс.Абстрактные члены из базового класса реализованы в производном классе.
Дополнительные сведения см. в разделах Практическое руководство. Определение наследования между типами (конструктор классов) и Практическое руководство. Создание типов с помощью конструктора классов.
Извлечение членов к интерфейсу
В новый интерфейс можно извлечь из типа один или несколько открытых членов.
Извлечение открытых членов в новый интерфейс
IN Конструктор классовщелкните правой кнопкой мыши тип, содержащий элемент или элементы, которые нужно извлечь, они указывали на Рефакторинг, а затем нажмите кнопку Извлечение интерфейса.
Диалоговое окно "Извлечение интерфейса" отображает значения по умолчанию для имени интерфейса и имени файла кода, в котором будет выполнено объявление.Оставьте значения по умолчанию или измените их.
в Выбрать открытые методы для создания интерфейса панель, устанавливает или снимает флажок рядом с элементами, которые нужно извлечь в новый интерфейс, а затем щелкните элемент ОК.
Будет создан новый интерфейс, и файл, содержащий члены, будет добавлен в проект.
Переопределение членов типа
В конструкторе классов можно разрешить члены как методы и свойства в классе дочернего элемента к элементам переопределенные унаследованные от базового класса.Переопределение члена возможно только в случае, если соблюдается следующее условие:
- Базовые переопределяемые методы должны быть виртуальными, абстрактными или переопределяемыми.(Методы не должны быть не виртуальными или статическими.)
Переопределение члена
На схеме классов щелкните правой кнопкой мыши фигуру класса и нажмите кнопку IntelliSense then переопределенныйЧлены.
Появится диалоговое окно, отображающее переопределяемые члены.
Из списка укажите элемента.
Элемент с тем же именем, модификатором доступа и возвращаемым значением, отображается в класс, и его свойство модификатор наследования набор переопределяет в Visual Basic или переопределенном методе в c#.
Переименование типов и членов типов
Конструктор классов позволяет переименовать тип или член типа на схеме классов или в окне "Свойства".В окне "Сведения о классе" можно изменить имя члена, но нельзя изменить его тип.Изменение имени типа или члена типа распространяется на все окна и места кода, в которых содержится старое имя.
Изменение имени в конструкторе классов
На схеме классов выберите тип или член.
Имя члена станет доступным для редактирования.
Введите новое имя для типа или члена типа.
Изменение имени в окне "Сведения о классе"
Отображение окна " сведения о классе " щелкните правой кнопкой мыши тип или член типа и затем щелкнуть Сведения о классах.
Откроется окно "Сведения о классе".
В столбце Имя измените имя члена типа.
Для перемещения фокуса от ячейки нажмите клавишу ВВОД или щелкните вне области ячейки.
Примечание В окне "Сведения о классе" можно изменить имя члена, но нельзя изменить его тип.
Изменение имени в окне "Свойства"
На схеме классов или в окне " сведения о классе " щелкните правой кнопкой мыши тип или член, а затем выберите Свойства.
Откроется окно "Свойства" со свойствами типа или члена типа.
В поле Имя введите новое имя типа или члена типа.
Изменение имени распространится на все окна и места кода в текущем проекте, в которых содержится старое имя.
Изменение порядка параметров
Конструктор классов позволяет изменить порядок параметров метода в типе.
Примечание |
---|
Необязательные параметры должны находиться в конце списка параметров.Дополнительные сведения о создании необязательные параметры с помощью конструктора классов см. в разделе Добавление параметров к методам. |
Изменение порядка параметров
На схеме классов разверните фигуру типа и затем секцию Методы.
в Методы секция щелкните правой кнопкой мыши метод с параметрами нужно переупорядочить, указывать на Рефакторинги выберите команду Упорядочить параметры.
Откроется диалоговое окно Упорядочение параметров.
в Упорядочить параметры диалоговое окно перемещение параметры в порядке, а затем нажмите кнопку ОК.
Порядок параметров изменится в коде и в фигуре на схеме классов.
Перемещение элементов типа из одного типа в другой
С помощью Конструктора классов можно переместить член типа из одного типа в другой, если оба члена отображаются в текущей схеме классов.
Перемещение члена типа из одного типа в другой
В типе, который виден в области конструктора щелкните правой кнопкой мыши элемент, который необходимо переместить в другой тип, а затем - Вырезать.
Щелкните правой кнопкой мыши, а затем выберите тип назначения Вставить.
Свойство будет удалено из исходного типа и отобразится в конечном типе.
Связанные разделы
Заголовок |
Описание |
---|---|