
- •Оглавление
- •Об авторе
- •Посвящение
- •Благодарности
- •Ждем ваших отзывов!
- •Что такое .NET
- •Создание исходной программы
- •Тестовая поездка
- •Каркас программы
- •Комментарии
- •Введение в хитрости панели элементов
- •Повторное использование кода из панели элементов
- •Правила объявления переменных
- •Вариации на тему int
- •Объявление переменной с плавающей точкой
- •Ограничения переменных с плавающей точкой
- •Объявление переменных типа decimal
- •Сравнение десятичных и целых чисел, а также чисел с плавающей точкой
- •Логичен ли логический тип
- •Символьные типы
- •Что такое тип-значение
- •Неизменяемость строк
- •Основные операции над строками
- •Сравнение строк
- •Сравнение без учета регистра
- •Отличие строк в разных регистрах
- •Преобразование символов строки в символы верхнего или нижнего регистра
- •Поиск в строках
- •Как искать
- •Пуста ли строка
- •Удаление пробельных символов
- •Анализ числового ввода
- •Обработка последовательности чисел
- •Объединение массива строк в одну строку
- •Арифметика
- •Простейшие операторы
- •Порядок выполнения операторов
- •Оператор инкремента
- •Сравнение чисел с плавающей точкой
- •Составные логические операторы
- •Вычисление типа операции
- •Типы при присваивании
- •Перегрузка операторов
- •Ветвление с использованием if и switch
- •Инструкция if
- •Инструкция else
- •Как избежать else
- •Вложенные инструкции if
- •Конструкция switch
- •Циклы
- •Цикл без счетчика
- •Правила области видимости
- •Пример
- •Зачем нужны разные циклы
- •Зачем нужны массивы
- •Массив фиксированного размера
- •Массив переменного размера
- •Свойство Length
- •Инициализация массивов
- •Понятие <т>
- •Обобщенные коллекции
- •Инстанцирование пустого списка
- •Создание списка целых чисел
- •Преобразования списков в массивы и обратно
- •Подсчет количества элементов в списке
- •Поиск в списках
- •Инициализаторы массивов и коллекций
- •Выполнение специфичных для множеств задач
- •Создание множества
- •Добавление элемента в множество
- •Выполнение объединения
- •Пересечение множеств
- •Получение разности
- •Не используйте старые коллекции
- •Обход каталога файлов
- •Начало программы
- •Получение начальных входных данных
- •Создание списка файлов
- •Форматирование вывода
- •Вывод в шестнадцатеричном формате
- •Обход коллекций: итераторы
- •Доступ к коллекции: общая задача
- •Использование foreach
- •Формат индексатора
- •Блок итератора
- •Создание каркаса блока итератора
- •Итерирование дней в месяцах
- •Что же такое коллекция
- •Синтаксис итератора
- •Блоки итераторов произвольного вида и размера
- •Обобщенные классы безопасны
- •Обобщенные классы эффективны
- •Очередь с приоритетами
- •Распаковка пакета
- •Написание обобщенного кода
- •Использование простого необобщенного класса фабрики
- •Незавершенные дела
- •Ковариантность
- •Использование механизма исключений для сообщения об ошибках
- •Что происходит при генерации исключения
- •Исключительный пример
- •Что делает этот пример "исключительным"
- •Трассировка стека
- •Советы по написанию кода с хорошей обработкой ошибок
- •Анализ возможных исключений метода
- •Как выяснить, какие исключения генерируются теми или иными методами
- •Генерирующие исключения выражения
- •Работа с перечислениями
- •Создание перечислений с инициализаторами
- •Указание типа данных перечисления
- •Применение перечислений в конструкции switch
- •Процедурные поездки
- •Объектно-ориентированные поездки
- •Определение класса и объекта
- •Определение класса
- •Что такое объект
- •Различие между объектами
- •Работа со ссылками
- •Классы, содержащие классы
- •Определение константных членов-данных и членов-данных только для чтения
- •Передача аргументов методу
- •Передача методу нескольких аргументов
- •Соответствие определений аргументов их использованию
- •Перегрузка методов
- •Реализация аргументов по умолчанию
- •Возврат значения оператором return
- •Кортеж с двумя элементами
- •Создание кортежей более чем с двумя элементами
- •Глава 14 Поговорим об этом
- •Определение методов
- •Определение статического метода
- •Определение метода экземпляра
- •Полное имя метода
- •Ключевое слово this
- •Когда this используется явно
- •Что делать при отсутствии this
- •Использование локальных функций
- •Прочие уровни безопасности
- •Методы доступа
- •Пример управления доступом
- •Выводы
- •Статические свойства
- •Побочные действия свойств
- •Дайте компилятору написать свойства для вас
- •Методы и уровни доступа
- •Замена конструктора по умолчанию
- •Конструирование объектов
- •Непосредственная инициализация объекта
- •Конструирование с инициализаторами
- •Инициализация объекта без конструктора
- •Определение свойств с кодом
- •Определение конструкторов и деструкторов с кодом
- •Определение методов доступа к свойствам с кодом
- •Определение методов доступа к событиям с кодом
- •Наследование класса
- •Более сложный пример наследования
- •ЯВЛЯЕТСЯ или СОДЕРЖИТ
- •Доступ к BankAccount через содержание
- •Отношение СОДЕРЖИТ
- •Заменяемость классов
- •Неверное преобразование времени выполнения
- •Указание конкретного конструктора базового класса
- •Обновленный класс BankAccount
- •Перегрузка унаследованного метода
- •Простейший случай перегрузки метода
- •Различные классы, различные методы
- •Сокрытие метода базового класса
- •Вызов методов базового класса
- •Что неверно в стратегии использования объявленного типа
- •Использование is для полиморфного доступа к скрытому методу
- •Объявление метода виртуальным и перекрытие
- •Получение максимальной выгоды от полиморфизма
- •Разложение классов
- •Абстрактный класс: ничего, кроме идеи
- •Как использовать абстрактные классы
- •Создание абстрактных объектов невозможно
- •Опечатывание класса
- •Реализация интерфейса
- •Именование интерфейсов
- •Наследование и реализация интерфейса
- •Преимущества интерфейсов
- •Тип, возвращаемый методом
- •Что скрыто за интерфейсом
- •Гибкие зависимости через интерфейсы
- •Реализация отношения СОДЕРЖИТ с помощью интерфейсов
- •Определение делегата
- •Пример передачи кода
- •Делегирование задания
- •Очень простой первый пример
- •Более реальный пример
- •Создание приложения
- •Жизненный цикл делегата
- •Анонимные методы
- •Проектный шаблон Observer
- •Что такое событие. Публикация и подписка
- •Как издатель оповещает о своих событиях
- •Как подписаться на событие
- •Как опубликовать событие
- •Как наблюдатели "обрабатывают" событие
- •Сборки
- •Выполнимые файлы
- •Библиотеки классов
- •Создание проекта библиотеки классов
- •Создание автономной библиотеки классов
- •Создание классов для библиотеки
- •Использование тестового приложения
- •Дополнительные ключевые слова для управления доступом
- •protected: поделимся с подклассами
- •protected internal: более изощренная защита
- •Размещение классов в пространствах имен
- •Объявление пространств имен
- •Пространства имен и доступ
- •Использование полностью квалифицированных имен
- •Ссылочные типы
- •Выходные параметры
- •Альтернативные методы возврата значений
- •Работа с переменными out
- •Возврат значений по ссылке
- •Различия типов-значений
- •Когда следует использовать структуры
- •Добавление распространенных элементов структур
- •Управление отдельной записью
- •Добавление структур в массивы
- •Перекрытие методов
- •Определение того, что следует защищать
- •Документирование компонентов программы
- •Разложение компонентов на функции
- •Оценка рисков
- •Аутентификация с использованием входа в Windows
- •Безопасность развертывания
- •Уязвимости сценариев
- •Наилучшие методы защиты приложений Web Forms
- •Получение данных
- •Настройка образца схемы базы данных
- •Подключение к источнику данных
- •Работа с визуальными инструментами
- •Написание кода для работы с данными
- •Использование Entity Framework
- •Где водится рыба: файловые потоки
- •Потоки
- •Читатели и писатели
- •Пример использования потока
- •Как это работает
- •Наконец-то мы пишем!
- •Использование конструкции using
- •Загрузка файла из Интернета
- •Регистрация сетевой активности
- •Графика
- •Перья
- •Кисти
- •Текст
- •Классы рисования и каркас .NET
- •Приступая к работе
- •Настройка проекта
- •Обработка счета
- •Создание подключения к событию
- •Рисование доски
- •Запуск новой игры

Определение класса и объекта
|
,(),_,,'.,,:,),( |
,"1 "1. |
"1 , |
_1V1J,J1V1, |
()'aJ"1,1V1,J,1Y1 |
|
_'JJ,1Y1 |
1V1 |
c,sJ1)р1V1. |
|||
,"11 11V11:»_,,1)1V1 |
"1()1 1'J1V1Н "1.'JJ,1Y1 |
. ,_1V1J"1, |
р,,"1,_ |
l |
,(),_"1,,'.,,:,, |
|
,"1,J,s.,, |
,."1 "1_,s |
||||
,()1V1 |
,"1a_'J1V11V1 |
|
1),',,"1.ф |
J"1 1Y1"1()"1_"1 |
,,()"1,1),1V1()"1.'JJ,, |
|
1),',,, |
,()1V1a.'J, |
,(),_r |
|||
,,'.,,:),(- |
|
ъД |
Т |
дд |
|
|
|
|
|
|
|
|
|
t()"1JJ()',,1V1()"1.' |
J1V1, |
,"1_,,1V1(),s,),( |
"1 ,1)),(, |
(),',-J"1JJ"1 |
,1V1()' |
||||||||
,,s()k\ |
1)"1),("1(),, |
|
,(),_,,'., |
|
|
,:.,,, |
1)"1Jр,,р1V11V1 |
1V1 "1 ,1),, |
(),',-J"1JJ"1 |
|||||
'J1)"1.,1)1V1, |
|
,1:»_,,'а. |
1V1JJ(),а. |
,"11),s,',,,1V1а. |
_"11),s,,J),(, |
1V1,1V1 ,"1.'(),_ |
||||||||
.,,1 1"1k\ |
,1)' |
., |
|
1:»_),("1 |
,',,1) |
|
"1,"1 ()'.',, |
1)"1Jр,,р1V1.,, |
1V1Н ,(),_,,,J"1. |
|||||
. |
,()"1JJ()',,,s |
_ |
t(),_,"1,"1.1V1,k\ |
J',()1V1,,()k\ |
1:»_,"1 |
.'_' |
Н'_'1:»_' |
|
, |
,"1,"1a-.,, |
|
|
,),((),s1)r |
|
,1V1()'k\ |
,'1)1V1, |
1)'1) |
|
|
J',1V1),(1V11) |
а.,1)"1(),, |
||
|
"1 ,',,1V1 |
|
|
a'_'1:»_1V1 |
|
,"1,,()"11V1,- |
|
1V1,1V1,' |
),("1() _"1()"1.J"1JJ"1 |
|
_.1V1.,J1V1,:а. |
|
|
,"1(),. |
|
_"1,.,J |
|
,,"1_,,1V1()"1.',- |
|
,s,1V1р,ф ,,(),1)(),,,1)1V1k\ |
||||||||||||
_"1,,, |
|
1V1 ),(_,_ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Тр |
|
.,, "1, |
"1,1V1,'J1V1, |
),('1)"1. |
|
Н'_'1:»_1V1 |
_"1,.J"1 |
|
.1),.,, |
1:»_',- |
,,(),1V1J |
йр тъ |
рйДъДТ |
||||||||||
|
й Двщ()'J,,"1(),J,, |
|
,(),_,,.' |
|
|
"1 ,'_'.,,, |
|
"1,(),_,,,JJ"1. |
|
|
,'1),1V1, |
',-J"1. |
,1)"1r |
||||||||||
()"1,,-.,, |
|
_.1V1.,J1V1,: |
|
1V1 1V1,,.,,),( |
.,, |
J,1)"1),("1(),, |
|
1V1a J1V11Y1 "1,J'a,J, |
|
|
,() |
1V1р,,',1V1g |
|
Ч()"1,, |
|||||||||
),("1JJ"1k\,()'J,,"1(),J"1, |
|
|
,(),_,,."1 |
|
|
,"1.,),( |
,,"1,:),(- |
|
1V1,1V1 ,,(),_.1V1JJ',-,,:_ |
|
|
J'1:»_1V1,k\ . |
1)'1:»_,r |
||||||||||
,,., |
, |
Jр, |
,р1V11V1 |
йр тъ |
рйДъДТ |
Тр |
|
й ,(),Д,,'.,,:,),( |
|
|
,"1 "1. |
|
1:»_',),(- |
,(),_,,,J"1. |
|
||||||||
"1 ,',),(1V1g |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
щ'1)1V1, |
"1 ()'a"1,k\ |
1Y1"1()"1_1V1. |
|
,1V1,,s,,:,"1() |
_"1()"1.J"1JJ"1 |
_.1V1.,J1V1,: |
|
_"1,.,J |
|
.1),.,, |
|||||||||||||
1:»_',- |
|
1),' ,, |
|
@хяrи@k\"1,1V1,,.'.,,a1V1. |
|
|
|
,,sa,,),(.,JJ,, |
|
|
|
_,,: ,"1_,, |
|
1V1()"1.'J1V1,: |
,."1.,,.' |
|
|||||||
,()'J,,"1(),J"1JJ"1 |
|
|
,(),_,,.'_ |
|
щ'1)"1. |
1),',, |
|
хя@ |
r |
@. |
l |
,s_,, |
1V1,,),(- |
,."1.,,.' |
|
|
J',"1r |
||||||
_"1 1V1, |
|
iр |
т |
|
@@ |
@дяахi1V1 яО. иР |
@Пg |
|
|
|
|
|
|
|
|
|
|
|
|||||
t"1,1)"1,-1),s |
1),',,, |
|
р,J,()' |
|
-J',: 1)"1Jр,,р1V1 |
,: . |
,()"11 1()',,1V1()"1. |
|
'J1V11V1 |
J' |
l |
а"1J1V1. |
|||||||||||
,s_,s, |
|
1 1"1().a_"1 |
|
_,,',-J,, |
|
()',,,"1,(),J, |
|
. |
"1,,',-J,1Y1 |
|
JJ,'.'1Y1 |
1:»_',,1V1 |
r,,k\ |
p , |
J"1r |
||||||||
"1()1V1,J, |
|
1V1()"1.'JJ"1, |
,()"11 1()',, |
1V1()"1.'J1V1, |
J' |
l |
|
a_,,- |
|
., |
"1,1V1,'J, |
|
,"1,-1)"1 |
'Н,g |
Определение класса
r,C-0, <.(11( |
тюS p -S!60, 60W.1d:0.3 1.0d:17eC- ! ,4de!- |
.S |
|
268 ЧАСТЬ 2 Объектно-ориентированное программирование на С#

-НП И К И!Е!НИ ОЗС!"'JСТ ЕИНИЕИППСТ·!И!НЗОИ МЕИПНКИ!И"'JОКЕНПИИП ЕН!CПО МП!ОНЕНОИКПСЕМТЕХОНОТИИЕБ ЕИНИЕИППОЗЧОКОНИОПИЗИ ИИЕНИ!ПНТЕПНКИИПММКИИТЕХОЗНК!И"'JИИПИЕИПНЕ КИ!ИПОКПОЕЕИП ННИИКp
СОВЕТ ПНПЕОПНТЕН"'JКО!НППОЕ ЕНИЕИНИpЕО!ИО ОЗ!ИЧ!ИОCЕОПИЕНПИИПНТЕПН КИИПИБКИ!И"'JОКИЕННКИ! М ЕНИЕИ"'JИПИБТЕХ
О!И!ИПНООНT, ОСТИЕИНИl ! ИЕИПИЕ П!НИИН!И!НИОП!НИИ!ОИОЕЕПСЕ !!Б КИИЗ ЕНОЧННЕЕС ИПН!ОЧИКИПОЕО!И!ИПНООНС TtОСТИlЕИНИ! ИЕИПНЕИ КИ!ИПОКОНП!И
!И!НРО |
Т!ОИОЕЕ"'JСЕИ!!Б КИИЗЕНО |
ННЕЕСТЕХ!ОТЕЕО!ПС М!НЕЧИИЕО!М!ИПНООП |
|
НСp"'JОЗО!ИИЕО!НОЗПОО !ОИОЕЕПОИОИ ОООЕpПНПИПНСКНОCПИПОООНСИ!!ИПСp |
|||
НИКИЕОЗC |
!ИО К Ч!НКИ..· -<lНИИ! ПН!!СЗ |
ИНЕТЕНИИЗБr |
НИТНИЕОЗОКТЕН!Н!ИТЕХ |
Е!ЕНИ!И!И"'JИИП!НИИН!О!!ПО ОЕМИСКНОИКC ОЗИОКНОЗ)И |
А!И!НОC .ООЕНБЕО ИИЗ!НИ КНЕ ЗЕ!ИО ПИЕПОЧОИ!О!ПОp ЕОИПО!CПЕКС ПИТЕПНИОИК· !ИЕ ИЕИППО ИОИООИОТЕНН!!Нp"'JОКИИИОНПИОЕОПБО"'JИИЕНИ ННЗООИПН! ПОППНИО"'JОЗ ЕНОЧННЕЕОЗТЕХ
Что такое объект
l! .(.о |
a,!#.. |
(O.!-!25.1 |
Б# .! |
6# |
L(-!# >.! 5 L! .(.о L(-(O.!-!r |
|||
25.оd С.! |
.! .!.6#2 |
!.,# |
(.о .5L. |
-#.(..(k |
O |
1.оF!,L.о 2!..!O |
5 L!#.5Б5.о |
|
g.! OL#O-#L.#>.!20 -!62! 20.! |
.1.( |
.! a!#F(.оd omp2З#...(LL( |
!2З1O.1#.L1 |
|||||
(2(.!F5>2! |
OL.,!#Б20- !2З#..(- |
lМaБ(a!.!25# |
oskБ! 2# 5.#2. |
>2! 5-d |
||||
|
PИНЕИП "ю ,.s0ИИЕО!CТЕЕИОИБ!! |
ОЗОТЕПНКИИ"'JИБ КИ!ИЗrТЕХНp.ОО ПИ |
||||||
|
И!ИТПОЕ ЕО!ИТЕ"'JОИОЕНИ!И!И"'JИИОНПp КИООЕН КИ!ИЕ ПИИПО!CПОЕНИЕИП |
|||||||
|
НОКТЕХРОИНИЕИППНБОИЕН |
Е!БКЧ!БИОИБОЗ)ИПООЕ Е!ЧИКООЕОЗИ!CБК!БП |
||||||
ЗАПОМНИ! |
ИОИБОЗ)ИПООЕ |
ТЕХl·ТЕХТЕХK !ОО !ННЧЕИ"'JОПО!Н·ИОТЕ!НР!ИЗ НКООЕОЗИ!Cp |
ПОООНСЗБК!БИОИБОЗ)ИПООЕ ТЕХK l0ТЕХ
- M
ГЛАВА 1 2 Ндяеос оиоигчрййр 1и 269

|
|
o !!!!!!D |
it |
i!eS!! |
|
ЗА!!!-С!!! |
|
!r D!.i!.iDА!L!!.iN!a |
!D!! |
!D!D! |
|||||||||||||
|
|
!.i!D-iD!Bio!! i!eS!! |
ЗА!-i!!_rМА!rD!.i!.iDА!La!.iN!ao !D!!!! |
|
!!!!!!!.i!! |
||||||||||||||||||
ЗАПОМНИ! |
|
rc-iek |
z |
|
|
Н |
!-i!DMD!!АН uo |
_!!!!! |
!r! |
|
!!!! !-i |
d !D!! |
!!.in |
||||||||||
_!rB-i!!D!B ЗА!!!!!!!!! |
! |
!D! rrDr!r |
! |
r!!!!!!B |
|
!- |
EAWBLAs:EN!ТLAEE |
||||||||||||||||
|
|
|
|||||||||||||||||||||
|
|
А!L! !.iN! |
ЗА!!!!!! |
!!Р o!! |
!!rD!! !_!!D!!! |
!!a |
ai!D!!!!! |
|
!-СМА!r!i |
||||||||||||||
|
|
!!! |
|
i!e !! !.i!-СМА!r!!!!! |
_!!!!!!!!B |
|
!Bi! |
!!_D a!D |
|
|
|
|
|||||||||||
o _!!!!B |
|
!.i!!!!! |
!-СМА!r!!D_!!!!!!!DМА !Bi! |
!!_D |
|
!DD!! |
!!!!!B |
|
!.i!-i!D!!!B |
||||||||||||||
_!!!!!!!!B |
|
|
_!! !.i!D!!D!!!.iМА-i!Do!!!! |
|
!!_D a!D !!!!!!! |
!!!!.i!!!.iМА! |
_D!МА!B |
||||||||||||||||
!!!.i!,; |
!D!.i_!r!D!!!МА_!!!!!!!!B |
!КИi!a |
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
!!!!!!!DМА!!.i!!!!! |
!!r! |
!!_D ! i!! |
!-С!!! i!eS!! |
!D!МА!!.iМАD!МА!! |
||||||||||||||||
|
|
_! !D-i!!!,;o |
|
!!!DМА!!.i_!rB-i,;!! |
WB-icЗD!!!!DМА |
!!!D!!M!!.i!,;E |
_D |
||||||||||||||||
|
|
!МА!BР В |
t |
!!!!!!!DМА!Bi! |
!!B!.i!!!!!rB!! |
!.i!!!!D!! |
D!!Н !!!.i!!_! |
||||||||||||||||
подРОБности |
|
,зАБНБАЕ пеДРО |
ДБыoРДезАБНБАБ,сти |
,лтТн, |
ЕРПА |
БНААД-, ,ПБДРОаи |
|||||||||||||||||
|
|
пеДРО |
ЕДдОамА |
АДАДРОАБНБНе оАОТ,ПАДзБД ТТР |
ОаБНепеДРО |
|
ДдеБНА |
||||||||||||||||
|
|
е БмАТОБАвБНе |
АБНБП |
,пБТеБНБ |
|
,лБНТн,сти |
|
|
|
|
|
|
|||||||||||
Доступ к чл нам объекта |
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
..,,. |
|
!.р".( |
|
,r .--. |
|
М! .:-0! |
$(,1""( -!.-()"'1'1,. |
|
'1..!'1 |
nr"'1!)n |
|
'1$)" |
||||||||||
,"'1'1!" ,.r"" ),'1.."'1$" |
|
-! |
.'1з"( .$-r! |
) |
nr"'1" |
# |
_r11! |
,:>_ |
..,, |
!.р" |
. |
'1. |
|||||||||||
(!'1,. |
|
--,r."(-з |
|
_Q ",КЛ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
..,.з |
!1t1"'1. |
|
$з |
_w |
,!r.'1. |
|
,.).(. |
|
,., |
.'1.n"'1$" |
(., |
$ |
($1t1 |
|
a.р_ |
|||||
|
|
",( |
_Q |
", |
з)rз"(-з |
!.р",(!(,1 |
($1t1. |
М!.: -0!9 |
'1"(,1"'1'1.з |
М! . |
:-З! 9 |
||||||||||||
|
|
#е_ |
r11!,:>_ |
..,, |
|
$(,1""( |
($1t1 |
'1#. |
|
)"'1'1$("-. , !1t1'1","r"'1$. |
|
,r |
.--. |
||||||||||
:ADEJ1JJNN,1TМ!.:-0! ю |
Б!'1-(.'1(. |
|
(.,." |
$(,1""( |
($1t1 |
'1#.и (., |
n(! ($1t1 |
,!'1-(.'1 |
|||||||||||||||
|
|
(, |
|
-1t1'1.). |
!( |
!1t1"'1.(!'1. |
|
1t1'1$-).$).'1$з |
|
$ 1t1"'1"(,1"'1'1!. |
-r"). |
-!!(em |
|||||||||||
|
|
)"(-()-.( |
|
,'1-r.41 ,'1-6- JJ |
'1.r!r.41$n'1! |
|
) -r",-.O"(,1 |
|
S'1.1(,1"'1(" |
|
,!,. |
||||||||||||
270 |
ЧАСТЬ 2 |
Объектно-ориентированное программирование на С# |
|

сохраняются ссылки на строки |
rописывающие модель и про |
||
изводителя |
l |
" |
|
i И |
|
= = = |
|
= |
= |
= |
|
(lsetta - небольшой автомобиль, который производился в 1 950-х годах и имел одну дверь впереди.)
Пример объектно-основаt! ()Й J''l оrр,аммы
Программа |
n |
с |
очень проста и делает следующее: |
||
>> |
вч нополеоаCилуииC |
- |
|
||
сC |
ивЕпуоаCвсlоиаC |
l |
- |
|
|
сC |
.иуЕи dуоаCиdвмиаdуC |
l |
- |
||
сC |
шв1.ауоаC ЕьуаоьeеCваCвсlоиауC |
eCлилвпeаCe,CьуCvинуьэC |
|||
Вот код программы |
|
n с |
) |
|
|
»» |
n |
п |
|
|
|
»» |
|
. |
|
|
c |
»» |
|
c |
|
|
|
ы(
nп
ли
еи
(»»
п n |
( |
»»( |
»» |
||
п |
( |
»» |
т
»»
й |
o |
. |
# |
ли
»»
i И o уХh #у (
»»
i =
==
=
= +++ |
==== |

! О |
|
О I |
! K |
|
|
|
|
||
" ' J О |
! I |
О I |
|
|
|
! |
K |
||
" О |
|
|||
! I |
О K |
|||
|
! |
I |
||
|
|
|||
! О |
|
О K |
o О О o |
|
! |
|
K |
||
! О |
О o |
o |
||
О ЕТ |
||||
О |
О |
|
||
o |
О r |
|
||
o |
О |
PО |
|
|
! О |
|
|
О o |
|
О |
|
|
ОI |
|
" ' J K |
|
|
|
|
Листинг программы начинается с определения класса dе ы а д е e n |
|
|
Определение класса может находиться как до, так и после класса |
|
ЗАПОМНИ! |
бмиямогn (это не имеет значения). Однако вам нужно выбрать один |
|
стиль и постоянно следовать ему. |
||
|
Программа создает объект гхeоцnкласса dеыаукоерnзатем заполняет все его поля информацией, вводимой пользователем с клавиатуры . Проверка кор ректности входных данных не выполняется. Затем программа выводит вве денные данные на экран в несколько ином формате. Вывод этой программы выглядит следующим образом:
|
Ь ", |
хртрr; щй |
|
ок ,ш |
3 |
|
. |
ч |
|
l |
|
,ш 3 ", |
t |
|
хртрu: имщ |
|
|
и |
l |
G G G |
|
(,им ,хS |
272 ЧАСТЬ 2 Объектно-ориентированное программирование на С#