|
Программирование >> Программирование с использованием ajax
S. Если используется среда VS, открыть диаграмму классов для этого проекта с помощью окна Solution Explorer (для того, чтобы появился значок диаграммы классов, выбран должен быть сам проект, а не решение). Вначале диаграмма классов должна быть пустой, поскольку в данном проекте пока еще не содержится никаких классов. В случае отображения в этом представлении классов Resources и Settings, их можно скрыть, выполнив на каждом из них щелчок правой кнопкой мыши и выбрав в контекстном меню пункт Remove from Diagram (Удалить из диаграммы). Добавление перечислений Suit и Rank Добавить перечисление в диаграмму классов можно, перетащив в нее из панели Toolbox (Панель управления) элемент Enum (Перечисление) и заполнив соответствующим образом поля в диалоговом окне, которое появится после этого. Например, для перечисления Suit его следует заполнить так, как показано на рис. 10.10. Рис. 10.10. Добавление перечисления Еп ит Далее необходимо добавить члены перечисления в окне Class Details (Детали класса). Требуемые значения показаны на рис. 10.11.
Puc. 10.11. Добавление членов перечисления En ит Затем точно таким же образом добавляется из панели Toolbox перечисление Rank. Значения перечисления Rank показаны на рис. 10.12. НИГРГЗ- - btuce Four .. EigM .- Nine Puc. 10.12. Добавление членов перечисления Rank Значением первого члена назначается Асе (Туз) для того, чтобы при сохранении данных в перечислении соблюдалось соответствие с достоинством карты, т.е. чтобы, например, карта Six (Шестерка) сохранялась как 6. По завершении диаграмма должна иметь вид, показанный на рис. 10.13. Код, сгенерированный для этих двух перечислений в файлах Suit. CS и Rank. cs, будет выглядеть следующим образом: using System; using System.Collections.Generic; using System.Text; namespace ChlOCardLib { public enum Suit { Club, Diamond, Heart, Spade, Enum Club Diamond Heart Spade Puc. 10.13. Диаграмма классов после добавления перечислений Suit и Rank using System; using System.Collections.Generic; using System.Text; namespace ChlOCardLib { public enum Rank { Ace = 1, Deuce, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King, Те, кто использует VCE, могут добавить этот код вручную просто путем добавления самих файлов Suit.cs и Rank.cs, а затем ввода в них приведенного выше кода. В этом коде стоит обратить внимание, что дополнительные команды, добавленные генератором кода после последнего члена перечисления, не будут приводить к созданию дополнительного пустого члена (хотя они действительно являются немного неаккуратными). Добавление класса Card в этом разделе описан процесс добавления класса Card как комбинированным применением конструктора классов и редактора кода в VS, так с использованием только редактора кода в VCE. Добавление класса в конструкторе классов осуществляется во многом так же, как и добавление перечисления, а именно - за счет перетаскивания соответствующего элемента из панели Toolbox в диаграмму. В данном случае нужно перетащить в диаграмму элемент Class и присвоить ему имя Card. Далее следует в окне Class Details добавить поля rank и suit, а в окне Properties установить для свойства Constant Kind каждого из этих полей значение readonly. Также нужно добавить два конструктора: используемый по умолчанию (с уровнем доступности private) и принимающий два параметра - newSuit и newRank, соответственно, типа Suit и Rank (с уровнем доступности public). И, наконец, последнее, что следует сделать - переопределить метод ToSTring путем изменения значения свойства Inheritance Modifier в окне Properties на override. На рис. 10.14 показано окно Class Details и класс Card со всей введенной информацией.
Рис. 10.14. Окно Class Details после ввода информации, необходимой для класса Card Затем необходимо изменить код класса Card в файле Card, cs следующим образом (или добавить показанный ниже код в новый класс по имени Card в пространстве имен ChlOCardLib, если дело происходит в среде VCE): public class Card { public readonly Suit suit; public readonly Rank rank; public Card(Suit newSuit, Rank newRank) suit = newSuit; rank = newRank; private CardO public override string ToString() return The + rank + of + suit + s ;
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |