ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.12.2025

Просмотров: 3126

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Когда t h i s используется явно

185

Что делать при отсутствии this

188

Помощь от Visual Studio — автоматическое завершение

190

Справка по встроенным функциям системной библиотеки

191

Помощь при использовании ваших собственных функций и методов

192

Внесение дополнений в справочную систему

193

Генерация XML-документации

197

Глава 9. Работа со строками в С#

199

Основные операции над строками

200

Объединение неразделимо!

200

Сравнение строк

201

Сравнение без учета регистра

205

Использование конструкции switch

205

Считывание ввода пользователя

206

Разбор числового ввода

207

Обработка последовательности чисел

210

Управление выводом программы

212

Использование методов Trim() и Pad()

212

Использование функции конкатенации

215

Использование функции Split()

217

Форматирование строки

218

Часть IV. Объектно-ориентированное программирование

223

Глава 10. Что такое объектно-ориентированное программирование

225

Объектно-ориентированная концепция №1 —абстракция

225

Приготовление блюд с помощью функций

226

Приготовление "объектно-ориентированных" блюд

226

Объектно-ориентированная концепция №2 — классификация

227

Зачем нужна классификация

227

Объектно-ориентированная концепция №3 — удобный интерфейс

228

Объектно-ориентированная концепция №4 — управление доступом

229

Поддержка объектно-ориентированных концепций в С#

229

Глава 11. Классы

231

Ограничение доступа к членам класса

231

Пример программы с использованием открытых членов

232

Прочие уровни безопасности

235

Зачем нужно управление доступом

235

Методы доступа

236

Пример управления доступом

237

Выводы

242

Определение свойств класса

242

Конструирование объектов посредством конструкторов

244

Конструкторы, предоставляемые С#

244

10

Содержание


Конструктор по умолчанию

 

246

Создание объектов

 

247

Выполнение конструктора в отладчике

 

249

Непосредственная инициализация объекта — конструктор по умолчанию

252

Конструирование с инициализаторами

 

252

Перегрузка конструкторов

 

253

Устранение дублирования конструкторов

(

256

Фокусы с объектами

 

260

Глава 12. Наследование

 

261

Наследование класса

 

261

Зачем нужно наследование

 

263

Более сложный пример наследования

 

264

ЯВЛЯЕТСЯ или СОДЕРЖИТ

 

267

Отношение ЯВЛЯЕТСЯ

 

267

Доступ к BankAccount через содержание

268

Отношение СОДЕРЖИТ

 

269

Когда использовать отношение ЯВЛЯЕТСЯ, а когда — СОДЕРЖИТ

270

Поддержка наследования в С#

 

270

Изменение класса

.

270

Неверное преобразование времени выполнения

271

Ключевые слова is и as

 

272

Наследование и конструктор

 

274

Вызов конструктора по умолчанию базового класса

274

Передача аргументов конструктору базового класса

276

Обновленный класс BankAccount

 

278

Деструктор

 

281

Глава 13. Полиморфизм

 

283

Перегрузка унаследованного метода

 

283

Простейший случай перегрузки функции

284

Различные классы, различные методы

 

284

Сокрытие метода базового класса

 

285

Вызов методов базового класса

 

289

Полиморфизм

 

291

Что неверно в стратегии использования объявленного типа

292

Использование is для полиморфного доступа к скрытому методу

293

Объявление метода виртуальным

 

294

Абстракционизм в С#

 

297

Разложение классов

 

297

Голая концепция, выражаемая абстрактным классом

302

Как использовать абстрактные классы

 

302

Создание абстрактных объектов невозможно

304

Создание иерархии классов

 

304

Опечатывание класса

 

308

Содержание

11


Часть V. За базовыми классами

 

309

Глава 14. Интерфейсы и структуры

311

 

Что значит МОЖЕТ_ИСПОЛЬЗОВАТЬСЯ_КАК

 

311

Что такое интерфейс

 

312

Краткий пример

 

313

Пример программы, использующей отношение МОЖЕТ_ИСПОЛЬЗОВАТЬСЯ_КАК

315

Создание собственного интерфейса

 

315

Предопределенные интерфейсы

 

316

Сборка воедино

 

317

Наследование интерфейса

 

323

Абстрактный интерфейс

 

323

Структуры С# и их отличия от классов

 

326

Структуры С#

 

327

Конструктор структуры

 

329

Методы структур

 

329

Пример применения структуры

 

330

Унификация системы типов

 

333

Предопределенные типы структур

 

333

Унификация системы типов с помощью структур

 

334

Упаковка типов-значений

 

337

Глава 15. Обобщенное программирование

339

 

Необобщенные коллекции

 

340

Необобщенные коллекции

 

340

Использование необобщенных коллекций

 

341

Обобщенные классы

 

343

Обобщенные классы безопасны

 

343

Обобщенные классы эффективны

 

344

Использование обобщенных коллекций

 

344

Понятие <Т>

 

345

Использование List<T>

 

345

Создание собственного обобщенного класса

 

347

Очередь с приоритетами

 

348

Распаковка пакета

 

352

Функция Main()

 

353

Написание обобщенного кода

 

355

Обобщенная очередь с приоритетами

 

356

Незавершенные дела

 

358

Обобщенные методы

 

360

Обобщенные методы в необобщенных классах

 

362

Обобщенные методы в обобщенных классах

 

363

Ограничения для обобщенного метода

 

363

Обобщенные интерфейсы

 

364

Обобщенные и необобщенные интерфейсы

 

364

Использование (необобщенной) фабрики классов

 

365

Построение обобщенной фабрики

 

366

12

Содержание


Объявление пространств имен

-

422

Важность пространств имен

 

424

Доступ к классам с использованием полностью квалифицированных имен

425

Директива using

 

426

Использование полностью квалифицированных имен

 

427

Объединение классов в библиотеки

 

430

Создание проекта библиотеки классов

 

430

Создание классов для библиотеки

 

431

Создание проекта драйвера

432

Хранение данных в файлах

 

434

Использование StreamWriter

 

435

Повышение скорости чтения с использованием StreamReader

440

Глава 20. Работа с коллекциями

 

445

Обход каталога файлов

 

445

Написание собственного класса коллекции: связанный список

451

Пример связанного списка

 

452

Зачем нужен связанный список

 

461

Обход коллекций: итераторы

 

461

Доступ к коллекции: общая задача

 

462

Использование foreach

 

464

Обращение к коллекциям как к массивам: индексаторы

 

465

Формат индексатора

 

465

Пример программы с использованием индексатора

 

465

Блок итератора

 

469

Итерация месяцев

 

473

Что такое коллекция

 

474

Синтаксис итератора

 

475

Блоки итераторов произвольного вида и размера

 

476

Где надо размещать итераторы

 

479

Глава 21. Использование интерфейса Visual Studio

 

487

Настройка расположения окон

 

487

Состояния окон

 

488

Скрытие окна

 

490

Перестановка окон

 

490

Наложение окон

 

491

Модные штучки

 

493

Работа с Solution Explorer

 

493

Упрощение жизни с помощью проектов и решений

 

494

Отображение проекта

 

495

Добавление класса

 

497

Завершение демонстрационной программы

 

498

Преобразование классов в программу

 

501

Как должен выглядеть код

 

502

Помогите мне!

 

506

F1

 

506

14

Содержание