1629295407-c61bfe4caba98380ea3e7cdae6295416 (846200)
Текст из файла
OsborneMcGrawHill“Герберт Шилдтнаписал книгу,которую должениметь каждый, ктопрограммируетна C#.”-Прашант Шридхаран,управляющий выпускомC# продуктов, MicrosoftТНЛАСПБЕЫЙВ ETNERTINАвтор бестселлеров по программированию:продано более 3 миллионов его книг!Полныйсправочник поC#Герберт ШилдтББК 32.973.26-018.2.75Ш57УДК 681.3.07Издательский дом “Вильямс”Зав.
редакцией С.Н. ТригубПеревод с английского и редакция Н.М. РучкоПо общим вопросам обращайтесь в Издательский дом “Вильямс” по адресу:info@williamspublishing.com, http://www.williamspublishing.comШилдт, Герберт.Ш57полный справочник по C#. : Пер. с англ. — М. : Издательский дом “Вильямс”, 2004.— 752 с. : ил. — Парал. тит.
англ.ISBN 5-8459-0563-Х (рус.)В этом полном справочнике по C# — новому языку программирования,разработанному специально для среды .NET, — описаны все основные аспектыязыка: типы данных, операторы, управляющие инструкции, классы, интерфейсы,делегаты, индексаторы, события, указатели и директивы препроцессора. Подробноописаны возможности основных библиотек классов C#.Авторсправочника—общепризнанныйавторитетвобластипрограммирования на языках C и C++, Java и C# — включил в книгу полезные советыи сотни примеров с комментариями, которые удовлетворят как начинающихпрограммистов, так и опытных специалистов. Этот справочник обязан иметь подрукой каждый, кто программирует на C#.ББК 32.973.26-018.2.75Все названия программных продуктов являются зарегистрированными торговымимарками соответствующих фирм.Никакая часть настоящего издания ни в каких целях не может быть воспроизведена вкакой бы то ни было форме и какими бы то ни было средствами, будь то электронные илимеханические, включая фотокопирование и запись на магнитный носитель, если на это нетписьменного разрешения издательства Osborne Publishing.Authorized translation from the English language edition published by McGraw-HillCompanies, Copyright © 2003All rights reserved.
No part of this book may be reproduced or transmitted in any form orby any means, electronic or mechanical, including photocopying, recording or by any informationstorage retrieval system, without permission from the Publisher.Russian language edition published by Williams Publishing House according to theAgreement with R&I Enterprises International, Copyright © 2004ISBN 5-8459-0563-Х (рус.)ISBN 0-07-213485-2 (англ.)© Издательский дом “Вильямс”, 2004© by The McGraw-Hill Companies, 2003ОглавлениеВведениеЧасть I. Язык C#Глава 1.
Создание языка C#Глава 2. Обзор элементов языка C#Глава 3. Типы данных, литералы и переменныеГлава 4. ОператорыГлава 5. Инструкции управленияГлава 6. Введение в классы, объекты и методыГлава 7. Массивы и строкиГлава 8. Подробнее о методах и классахГлава 9. Перегрузка операторовГлава 10. Индексаторы и свойстваГлава 11. НаследованиеГлава 12.
Интерфейсы, структуры и перечисленияГлава 13. Обработка исключительных ситуацийГлава 14. Использование средств ввода-выводаГлава 15. Делегаты и событияГлава 16. Пространства имен, препроцессор и компоновочные файлыГлава 17. Динамическая идентификация типов, отражение и атрибутыГлава 18. Опасный код, указатели и другие темыЧасть II.
Библиотека C#Глава 19. Пространство имен SystemГлава 20. Строки и форматированиеГлава 21. Многопоточное программированиеГлава 22. Работа с коллекциямиГлава 23. Сетевые возможности и использование InternetЧасть III. Применение языка C#Глава 24. Создание компонентовГлава 25. Создание Windows-приложенийГлава 26. Синтаксический анализ методом рекурсивного спускаЧасть IV. ПриложенияПриложение А.
Краткий обзор языка комментариев XMLПриложение Б. C# и робототехникаПредметный указатель182122305380102126154179224256277319349375409431449484501502541575610645669670689707731732737740СодержаниеОб автореВведениеЧасть I. Язык C#Глава 1. Создание языка C#Генеалогическое дерево C#Язык C, или начало современной эпохи программированияСоздание ООП и C++Internet и появление языка JavaСоздание C#Связь C# с оболочкой .NET FrameworkО среде .NET FrameworkФункционирование системы CLRСравнение управляемого кода с неуправляемымСпецификация универсального языкаГлава 2. Обзор элементов языка C#Объектно-ориентированное программированиеИнкапсуляцияПолиморфизмНаследованиеПервая простая программаИспользование компилятора командной строки csc.exeВвод текста программыКомпилирование программыВыполнение программыИспользование Visual Studio IDE“Разбор полетов”, или первый пример программы “под микроскопом”Обработка синтаксических ошибокНебольшая вариация на тему первой программыВторая простая программаДругие типы данныхПервое знакомство с инструкциями управленияИнструкция ifЦикл forИспользование блоков кодаИспользование точки с запятой и оформление текста программыИспользование отступовКлючевые слова C#ИдентификаторыБиблиотеки классов C#Глава 3.
Типы данных, литералы и переменныеО важности типов данныхТипы значений в C#Целочисленные типыТипы для представления чисел с плавающей точкойТип decimalСимволы617182122232324252627272828293031323233333434343535384041424445454748505051515253545455575860СодержаниеТип boolО некоторых вариантах вывода данныхЛитералыШестнадцатеричные литералыУправляющие последовательности символовСтроковые литералыРассмотрим переменные поближеИнициализация переменнойДинамическая инициализацияОбласть видимости и время существования переменныхПреобразование и приведение типовАвтоматическое преобразование типовПриведение несовместимых типовПреобразование типов в выраженияхПриведение типов в выраженияхГлава 4.
ОператорыАрифметические операторыИнкремент и декрементОператоры отношений и логические операторыСокращенные логические операторыОператор присваиванияСоставные операторы присваиванияПоразрядные операторыПоразрядные операторы И, ИЛИ, исключающее ИЛИ и НЕОператоры сдвигаПоразрядные составные операторы присваиванияОператор ?Использование пробелов и круглых скобокПриоритет операторовГлава 5. Инструкции управленияИнструкция ifВложенные if-инструкцииКонструкция if-else-ifИнструкция switchВложенные инструкции switchЦикл forВариации на тему цикла forИспользование нескольких управляющих переменных циклаУсловное выражениеОтсутствие элементов в определении циклаБесконечный циклЦиклы без телаОбъявление управляющей переменной в цикле forЦикл whileЦикл do-whileЦикл foreachИспользование инструкции break для выхода из циклаИспользование инструкции continueИнструкция returnИнструкция gotoГлава 6.
Введение в классы, объекты и методыВведение в классыОбщая форма определения класса616265656666686869707273747678808182848789899090969999101101102103104105106110110112112114115116116117117119120120122123123126127127Содержание7Определение классаСоздание объектовПеременные ссылочного типа и присвоение им значенийМетодыДобавление методов в класс BuildingВозвращение из методаВозврат значенияИспользование параметровДобавление параметризованного метода в класс BuildingКак избежать написания недостижимого кодаКонструкторыПараметризованные конструкторыДобавление конструктора в класс BuildingИспользование оператора newПрименение оператора new к переменным типа значенийСбор “мусора” и использование деструкторовДеструкторыКлючевое слово thisГлава 7.
Массивы и строкиМассивыОдномерные массивыИнициализация массиваСоблюдение “пограничного режима”Многомерные массивыДвумерные массивыМассивы трех и более измеренийИнициализация многомерных массивовРваные массивыПрисвоение значений ссылочным переменным массивовИспользование свойства LengthИспользование свойства Length при работе с рваными массивамиЦикл foreachСтрокиСоздание строкРабота со строкамиМассивы строкПостоянство строкИспользование строк в switch-инструкцияхГлава 8. Подробнее о методах и классахУправление доступом к членам классаСпецификаторы доступа C#Применение спецификаторов доступа public и privateУправление доступом: учебный проектПередача объектов методамКак происходит передача аргументовИспользование ref- и out-параметровИспользование модификатора refИспользование модификатора outИспользование модификаторов ref и out для ссылочных параметровИспользование переменного количества аргументовВозвращение методами объектов8128132133134134137138140142144144146146147148149149151154155155157158159159160161162164165167168172172173175177178179180180182182187189191191193195197199СодержаниеВозвращение методами массивовПерегрузка методовПерегрузка конструкторовВызов перегруженного конструктора с помощью ссылки thisМетод Main()Возвращение значений из метода Main()Передача аргументов методу Main()РекурсияИспользование модификатора типа staticСтатические конструкторыГлава 9.
Перегрузка операторовОсновы перегрузки операторовПерегрузка бинарных операторовПерегрузка унарных операторовВыполнение операций над значениями встроенных C#-типовПерегрузка операторов отношенийПерегрузка операторов true и falseПерегрузка логических операторовПростой случай перегрузки логических операторовВключение операторов, действующих по сокращенной схеме вычисленийОператоры преобразованияРекомендации и ограничения по созданию перегруженных операторовЕще один пример перегрузки операторовГлава 10. Индексаторы и свойстваИндексаторыСоздание одномерных индексаторовПерегрузка индексаторовИндексаторам не требуется базовый массивМногомерные индексаторыСвойстваПравила использования свойствИспользование индексаторов и свойствГлава 11.
НаследованиеОсновы наследованияДоступ к членам класса и наследованиеИспользование защищенного доступаКонструкторы и наследованиеВызов конструкторов базового классаНаследование и сокрытие именИспользование ключевого слова base для доступа к скрытому имениСоздание многоуровневой иерархииПоследовательность вызова конструкторовСсылки на базовый класс и объекты производных классовВиртуальные методы и их переопределениеЗачем переопределять методыПрименение виртуальных методовИспользование абстрактных классовИспользование ключевого слова sealed для предотвращения наследованияКласс objectПриведение к объектному типу и восстановление значенияИспользование класса object в качестве обобщенного типа данных202203208212213213213215218223224225226228232236237240240242246250251256257257260263264266271271277278281283285286290291293296297301305305309313313315317Содержание9Глава 12. Интерфейсы, структуры и перечисленияИнтерфейсыРеализация интерфейсовИспользование интерфейсных ссылокИнтерфейсные свойстваИнтерфейсные индексаторыНаследование интерфейсовСокрытие имен с помощью наследования интерфейсовЯвная реализация членов интерфейсаЗакрытая реализацияКак избежать неопределенности с помощью явной реализацииВыбор между интерфейсом и абстрактным классомСтандартные интерфейсы среды .NET FrameworkУчебный проект: создание интерфейсаСтруктурыЗачем нужны структурыПеречисленияИнициализация перечисленийЗадание базового типа перечисленияИспользование перечисленийГлава 13.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.