Что почитать про Java прямо сейчас? / Хабр

Язык Java появился в уже далёких в 1990-х годах и менее чем за 5 лет стал одним из трёх самых популярных языков на планете. Сегодня, в том числе благодаря развитию мобильного мира, Java продолжает быть современным и невероятно востребованным представителем мира IT.

Но популярность вкупе с возрастом имеет и обратную сторону медали — за эти 23 года было издано огромное количество литературы. Некоторые книги стали настоящей классикой, поэтому именно на них ориентируются преподаватели на учебных курсах даже сегодня в 2018 году. Однако это не означает, что за последние годы не издавалось хороших книг. В подтверждение этого, автор GeekBrains Илья Бубнов изучил онлайн-магазины, чтобы найти десяток самых рейтинговых книг по Java, изданных или переизданных на русском языке за последний год.



Начнём мы с книг, наполненных примерами с комментариями, ведь именно в них заложена особая ценность при изучении нынешней версии Java.

«Java на примерах» — доработка аналогичной книги Сеттера 2016 года. Тот экземпляр отличался абстрактными задачами, поданными без контекста и с поверхностным подходом, который без использования дополнительной литературы был бесполезным.

Эта книга сделала шаг вперёд в плане качества: код годен для реального применения, информация подаётся правильной дозировкой, а для понимания задач новичку достаточно официальной документации по Java.


В своей книге Коузен рассматривает подходы к решению более чем 70 классических задач. Большинство из них ориентированы на Java SE8, так как именно эта версия совершила мини-революцию в языке, но есть и дополнение из девятой версии.

Эту книгу будет полезно прочитать тем, кто уже учится на курсах или даже имеет пару лет опыта. То есть базовой теории здесь почти нет, зато достаточно много внимания уделено
возможностям обновлённой Java: лямбда-выражениям, функциональным интерфейсам, предикатам и многому другому.


Книга написана профессиональными преподавателями по Java, поэтому с точки зрения подачи материала придраться не к чему. Сначала вы познакомитесь со средой разработки, после этого перейдёте к основам ООП и языка. Всё сопровождается примерами кода и образными сравнениями, у вас не возникнет проблем с пониманием теории.

Ещё один плюс — книга не обрывается на базовых возможностях Java, а затрагивает некоторые моменты продвинутого программирования. Для этого в конце даже есть специальный раздел со сценариями, в которых можно применить изученный материал. Единственное, что может не понравиться в «Java для начинающих», это частые повторения фундаментальных понятий языка. Для новичка это скорее плюс, но если Java для вас просто очередной язык, читать становится тяжеловато.


Четвёртое издание популярной серии справочников O’Reilly, обновлённое до версии Java 9. Как и в другим книгах, здесь вы найдёте дублирование официального документа, но с живым языком и более качественной структурой. Естественно, учиться по такой книге достаточно тяжело, а вот купить и положить на рабочий стол будет очень полезно.


Ещё одна классическая серия книг. Как подобает серии, здесь очень много практической, пошаговой теории, которая позволит человеку, даже далёкому от программирования, понять и проникнуться Java. Это не практический учебник и не справочник; это книга, которую можно прочитать один раз и понять, хочешь ли ты двигаться дальше. Она обновлена до Java 9 и переиздана в 2018 году. Но для долгого объяснения ООП и базовых программ версия не имеет значения.


Название книги однозначно показывает целевую аудиторию. Эта книга не подойдёт новичкам, тем, кто слабо знаком с программированием в целом и с Java в частности. Однако тем, кто изучал Java много лет назад, а теперь потребовалась бумажная книга, где в терминах описаны изменения девятой версии — это полезная литература. Адаптация книга прошла безболезненно, поэтому для людей, которые давно дружат с Java, будет полезно купить «Полный обзор нововведений» и положить на ближайшую книжную полку.


Кей Хорстманн — автор нескольких известнейших книг по Java. Конкретно эта будет интересна не столько теорией, хотя здесь её хватает, сколько способом подачи и последующей практикой. Информация подаётся небольшими порциями и тут же закрепляется в упражнениях. С точки зрения усвояемости такой подход полезен большинству людей, однако в качестве справочника такая книга имеет явный недостаток — стандартная темы может быть растянута на несколько страниц.

Java SE от Хорстманна, пожалуй, одна из самых популярных учебных книг по языку. Поэтому если информация в предыдущих книгах вам показалось слишком сжатой, сложной для понимания, то здесь вы точно этого не почувствуете.


Профильная книга, что только придаёт ей ценность, Себастьяна Дашнера, в 2016 году удостоившегося звания Java-champion (это очень круто, если что). Это не книга для обучения языку, она, скорее, подойдёт тем, кто собрался перейти от прикладного уровня к созданию корпоративных приложений. Здесь есть всё необходимое: общие принципы создания таких продуктов, организация работы по принципу DevOps, фундаментальные основы для создания тестов.


Герберт Шилдт — автор множества книг не только по Java, но и по другим языкам. Данная работа — та самая классика, причём обновлённая уже в десятый раз до версии Java 9. На почти полутора тысячах страниц вам предстоит путь от изучения принципов ООП до компонентов JavaBeans. Здесь много теории и примеров с комментариями, в общем, всё то, что хочется видеть новичку в, быть может, единственной бумажной книге по программированию.

В мировой практике книга Шилдта также является общепризнанной must-read, входит в топ на Amazon и фигурирует практически во всех рейтингах лучших публикаций по Java. Издание на русском языке не испортило оригинал, а значит к прочтению строго рекомендуется.


Книга популярной серии Head First — определённый знак качества для тех, кто хочет быстро вникнуть в незнакомую тему. Здесь есть всё, чтобы новичку познакомиться с языком: юмор, иллюстрации, упражнения, примеры с комментариями. При этом вам даже не обязательно знать основы программирования, здесь всё подробно расписано.

Если говорить о недостатках, то это, конечно же, слабая актуальность книги. Английская версия была издана аж 13 лет назад, то есть от современных возможностей Java она невероятно далека. Для начала подойдёт, но в качестве настольного справочника лучше держать другие книги.


Завершим мы рейтинг одним важным примером того, почему программисту нужно знать английский язык и использовать оригинальную литературу. «Java. Библиотека профессионала» — ещё одна отличная книга Хорстманна, давно ставшая классикой. Состоит из двух томов «Основы» и «Расширенные средства программирования», каждый под 1000 страниц, поэтому на нехватку информации точно не пожалуетесь. Это уже 10-е по счёту издание, в России оно появилось в конце 2017 года. Оно посвящено Java SE 8, хотя сейчас актуальна уже 9 версия, но не это самое страшное. К сожалению, как это часто бывает, адаптация не прошла бесследно — перевод и экономия на печати сильно понизили градус крутости труда Кей С. Хорстманна. Вам придётся столкнуться с такой дикостью, как, например, перевод аббревиатуры IDE (тут он ИСР).

В изучении языка вам это не помешает, но если вы совсем зелёный программист, можете понабраться неправильных слов.

В связи с последним примером, возник важный вопрос: а какие книги вы НЕ рекомендуете покупать из-за «кривой» адаптации?

Книга «Java в примерах: Справочник» из жанра Java

Разделы

  • Художественная литература
  • Российский боевик
  • Триллер
  • Современный криминальный детектив
  • Российская историко-приключенческая проза
  • Исторический любовный роман
  • Фантастика
  • Кинороманы
  • Детские сказки, мифы и басни
  • Басни
  • Детские сказки
  • Русские народные сказки
  • Сказки в стихах
  • Тайны и таинственные явления
  • Тайны
  • Гадания
  • Толкование снов
  • Парапсихология
  • Бизнес
  • Электронная коммерция
  • Нормативные акты
  • Менеджмент
  • Реклама и PR
  • Финансы
  • Экономика
  • Предпринимательство, торговля
  • Компьютерная литература
  • Интернет
  • Основы компьютерной грамотности
  • Windows и Office
  • Web-дизайн. Web-мастеринг.
  • Web-сервисы
  • Автотранспорт
  • Мотоциклы и мопеды
  • Автобусы, троллейбусы
  • Иностранные автомобили
  • Правила дорожного движения
  • Карты и атласы автодорог
  • Белоруссия
  • Россия
  • Украина
  • Страны Балтии
  • Другие страны
  • Группа в ВК

Главная » Java » Java в примерах: Справочник

 
 

Java в примерах: Справочник

Автор: Флэнаган Д. Жанр: Java Издательство: Символ-Плюс Год: 2003 Количество страниц: 664 Формат:  PDF (33.20 МБ)
Дата загрузки: 16 мая 20092008-08-23
Скачать с нашего сайта
Скачать в два клика

Поделись
с друзьями!
 

Аннотация

Второе издание книги «Java в примерах. Справочник» содержит 164 законченных практических примера: свыше 17 900 строк тщательно прокомментированного, профессионально написанного Java-кода, работающего с 20 различными программными интерфейсами Java, такими как сервлеты, JSP, XML, Swing и Java 2D. Приведены примеры, иллюстрирующие ключевые интерфейсы Java для корпоративных проектов, включая вызов удаленных методов (RMI), доступ к базам данных (JDBC). Автор бестселлера «Java in a Nutshell» (в русском переводе «Java. Справочник», Символ-Плюс) создал целую книгу примеров программ, на которых можно учиться и которые можно модифицировать для использования в своих приложениях. Если вы предпочитаете учиться «на примерах», эта книга для вас. Книга дополняет серию справочников по Java издательства O’Reilly и будет полезна как начинающим, так и опытным Java-программистам. Удобный указатель примеров (глава 20) позволяет быстро найти метод или класс Java, а затем отыскать примеры, демонстрирующие их применение.

Комментарии


Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикаци.

 

Пруцков А. В. Программирование на языке Java. Введение в курс

Купить

Книгу можно приобрести в Издательстве Курс.

Библиографическая ссылка

Пруцков А. В. Программирование на языке Java. Введение в курс с примерами и практическими заданиями: учебник. — М.: КУРС, 2018. — 208 с.

Скачать

Программы из примеров учебника

Вы можете открыть программы примеров в среде разработки Eclipse.

Оставить отзыв о книге

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

Предисловие

Назначение учебника

Этот учебник предназначен для читателей, владеющих основами программирования и желающих получить начальные знания программирования на языке Java. Выполнив практические работы на основе теоретических и справочных материалов, приведенных в учебнике, вы изучите язык Java и научитесь писать программы на этом языке.

Учебник включает лекционные материалы и задания практических работ курса, который автор преподавал студентам технических специальностей и направлений, связанных с программированием, в высших учебных заведениях: 09.03.04 – «Программная инженерия» и 09.05.01 – «Применение и эксплуатация автоматизированных систем специального назначения». Номера специальностей и направлений приводятся такими, какими они были на момент преподавания курса. За время преподавания автором были изданы учебные пособия и в соавторстве методические указания, материалы которых включены в этот учебник. Также в учебнике использовались материалы двухтомного учебника по информатике и программированию. Методика преподавания курса апробировалась на научно-методических конференциях.

Структура и содержание учебника

    Учебник состоит из четырех частей:
  1. теоретических и справочных материалов по основам языка Java с примерами;
  2. практических работ и заданий к ним;
  3. дополнительных материалов для преподавателей;
  4. библиографического списка, использованного при написании учебника.

Теоретические и справочные материалы учебника поделены на разделы. Каждый раздел неделим и посвящен одной теме. Такое деление объясняется желанием автора дать возможность читателям, еще не освоившим язык программирования Java, использовать учебное пособие в качестве справочного.

В главе «1. Основы языка программирования Java» излагаются основные понятия объектно-ориентированного программирования и языка Java: классы и объекты. Классы включают поля, конструкторы и методы. Метод main является точкой входа в программу. Все классы в языке Java являются прямыми или косвенными подклассами класса Object и наследуют его методы. Для структуризации программы используются пакеты, в которые помещаются классы с общей функциональностью или решающие одну или схожие задачи. Приведен пример использования классов и объектов. В этой и последующих главах для стандартных классов используются короткие имена, так как это не вызывает неоднозначности.

Глава «2. Элементы языка программирования Java» посвящена изложению базовых понятий языка Java, без которых невозможно начать писать программы на этом языке: базовые типы переменных, массивы, строки, управляющие конструкции и порядок ввода и вывода на консоль. Все типы в языке Java делятся на базовые и ссылочные. Базовые типы (целые, вещественные, символьный, логический) используются для определения полей классов. Ссылочные типы представлены в главе строками и массивами. Строки в языке Java – это объекты классов String, StringBuilder или StringBuffer. Массивы могут содержать элементы базовых и ссылочных типов. Операции сортировки, поиска, копирования, заполнения и сравнения собраны в классе-утилите Arrays. Язык Java имеет те же управляющие конструкции, как и большинство языков структурного программирования: ветвления и циклы.

В главе «3. Объектно-ориентированное программирование» продолжается и расширяется изложение базовых понятий объектно-ориентированного программирования, начатых в главе 1. Принципы этого типа программирования (инкапсуляция, наследование и полиморфизм) позволяют сократить дублирование строк программы и тем самым сделать программу легко расширяемой и изменяемой. Классам и их элементам можно придать различные свойства, сделав их абстрактными или статическими. Чтобы задать общее поведение классов, описывающих сущности из разных предметных областей, используются интерфейсы. Перечисления позволяют задать не только совокупность значений объекта, но и каждому значению задать свое собственное поведение. Глава завершается примером проектирования иерархии классов с использованием рассмотренных понятий.

В главе «4. Стандартные классы и библиотеки» представлены наиболее часто используемые стандартные классы и библиотеки языка Java. Язык Java предоставляет возможность разработки многоязычных интерфейсов программ. Чтение и запись в различные типы данных (файлы, массивы, строки) осуществляется единообразно с помощью потоков ввода и вывода данных. Ошибки при работе с потоками ввода или вывода, а также другие ошибки при выполнении программы обрабатываются с помощью исключений. Кроме массивов, для хранения и обработки данных используются коллекции.

Почти каждый раздел снабжен примерами, поясняющими описываемые понятия. Обозначение примера включает номер главы и через дефис порядковый номер примера в этой главе. Текст программ в примерах оформлен в соответствии с соглашениями Java Code Conventions [45].

Знание английского языка важно при программировании, так как проекты по разработке программного обеспечения ведутся международными группами программистов. Поэтому все названия элементов программ и комментарии в примерах приведены на английском языке.

Читателю (и студентам) предлагается закрепить теоретический материал на практике. Для этого в учебник включена глава «5. Практические работы». Практические работы охватывают все темы разделов учебника: строки и массивы; классы и их иерархии; потоки ввода и вывода; коллекции. Практические работы имеют различные варианты заданий, рассчитанные на одну студенческую группу (15-20 человек).

Существуют различные среды разработки программ на языке Java. Однако предполагается, что студенты будут использовать среду Eclipse. Освоить навыки работы в ней можно с помощью главы «6. Разработка программ в среде Eclipse».

На лекционных занятиях использовались специально подобранные примеры для пояснения понятий языка Java и объектно-ориентированного программирования. Примеры приведены в главе «7. Примеры программ для проведения лекционных занятий».

В главе «8. Дополнительные материалы» приводятся методические рекомендации по проведению лекционных и практических занятий на основе этого учебника.

Книги, учебные материалы и информационные ресурсы глобальной сети Интернет из библиографического списка использовались в качестве вспомогательных источников информации для написания теоретических разделов учебника и для разработки вариантов заданий к практическим работам. Библиографический список упорядочен в алфавитном порядке.

Принципы, на которых построен учебник

Перечислим основные принципы, которые положены в основу учебника.

1. Последовательность изложения.

Понятия объясняются на основе уже известных понятий. При написании разделов материал излагался максимально последовательно, без перескоков от одного понятия к другому. Однако в нескольких случаях приходилось упоминать о каком-то понятии, без которого невозможно последующее изложение, а затем раскрывать его более полно в следующих разделах. Этот недостаток присущ многим книгам, посвященным языку Java и другим объектно-ориентированным языкам программирования.

2. Минимум строк программ в примерах. Программы должны быть объемом не более одной страницы.

Примеры программ в учебнике упрощены и сокращены, чтобы сосредоточить их на конкретную тему. Программу объемом более одной страницы сложнее понимать.

3. Минимум требуемого теоретического материала.

Теоретический материал включает необходимые сведения для выполнения практических работ.

Обозначения, используемые в учебнике

В учебнике используются следующие выделения шрифтами и специальный символ.

Сжатый шрифт без засечек

Листинг программ в примерах и теоретическом материале, заголовки методов в описании классов.

Моноширинный шрифт с засечками

Текст, выводимый программой на экран или консоль.

Символ □

Конец примера. Отделяет пример от последующего текста.

Об авторе

Александр Викторович Пруцков – доктор технических наук, профессор кафедры вычислительной и прикладной математики Рязанского государственного радиотехнического университета на протяжении более 10 лет читает курсы по программированию и информатике, активно сотрудничает с российскими и международными компаниями из отрасли информационных технологий.

Поддержка учебника

Автор готов ответить на вопросы и дать консультации преподавателям, желающим использовать материалы учебника для постановки новых или обновления существующих курсов. Связаться с автором по всем интересующим вопросам можно через его Интернет-ресурс http://prutzkow.com. С этого же Интернет-ресурса можно загрузить примеры, приведенные в учебнике, в электронном виде.

примеров Deitel Java

примеров Deitel Java

JavaHTP6e_examples.zip с сайта www.deitel.com

./appF/Unicode.java
./appF/UnicodeJFrame.java
./appH/Время.java
./appI/figI_02/PrintBits.java
./appI/figI_04_05/BitRepresentation.java
./appI/figI_04_05/MiscBitOps.java
./appI/figI_08/BitShift.java
./appI/figI_10/BitSetTest.java
./appJ/ATM.java
./appJ/ATMCaseStudy.java
./appJ/Account.java
./appJ/BalanceInquiry.java
./appJ/BankDatabase.java
./appJ/CashDispenser.java
./appJ/Deposit.java
./appJ/DepositSlot.java
./appJ/Клавиатура.java
./appJ/Screen.java
./appJ/Transaction. java
./appJ/Withdrawal.java
./appN/Account.java
./appN/AccountTest.java
./appN/Интерес.java
./ch01/LogoAnimator/images/deitel0.gif
./ch01/LogoAnimator/images/deitel1.gif
./ch01/LogoAnimator/images/deitel10.gif
./ch01/LogoAnimator/images/deitel11.gif
./ch01/LogoAnimator/images/deitel12.gif
./ch01/LogoAnimator/images/deitel13.gif
./ch01/LogoAnimator/images/deitel14.gif
./ch01/LogoAnimator/images/deitel15.gif
./ch01/LogoAnimator/images/deitel16.gif
./ch01/LogoAnimator/images/deitel17.gif
./ch01/LogoAnimator/images/deitel18.gif
./ch01/ЛогоАниматор/изображения/deitel19.gif
./ch01/LogoAnimator/images/deitel2.gif
./ch01/LogoAnimator/images/deitel20.gif
./ch01/LogoAnimator/images/deitel21.gif
./ch01/LogoAnimator/images/deitel22.gif
./ch01/LogoAnimator/images/deitel23.gif
./ch01/LogoAnimator/images/deitel24.gif
./ch01/LogoAnimator/images/deitel25.gif
./ch01/LogoAnimator/images/deitel26.gif
./ch01/LogoAnimator/images/deitel27.gif
./ch01/LogoAnimator/images/deitel28.gif
./ch01/LogoAnimator/images/deitel29. gif
./ch01/ЛогоАниматор/изображения/deitel3.gif
./ch01/LogoAnimator/images/deitel4.gif
./ch01/LogoAnimator/images/deitel5.gif
./ch01/LogoAnimator/images/deitel6.gif
./ch01/LogoAnimator/images/deitel7.gif
./ch01/LogoAnimator/images/deitel8.gif
./ch01/ЛогоАниматор/изображения/deitel9.gif
./ch02/ex02_06/Product.java
./ch02/fig02_01/Welcome1.java
./ch02/fig02_03/Welcome2.java
./ch02/fig02_04/Welcome3.java
./ch02/fig02_06/Welcome4.java
./ch02/fig02_07/Addition.java
./ch02/fig02_15/Сравнение.java
./ch03/Fig03_17/Dialog1.java
./ch03/Fig03_18/ИмяDialog.java
./ch03/fig03_01_02/GradeBook.java
./ch03/fig03_01_02/GradeBookTest.java
./ch03/fig03_04_05/GradeBook.java
./ch03/fig03_04_05/GradeBookTest.java
./ch03/fig03_07_08/GradeBook.java
./ch03/fig03_07_08/GradeBookTest.java
./ch03/fig03_10_11/GradeBook.java
./ch03/fig03_10_11/GradeBookTest.java
./ch03/fig03_13_14/Account.java
./ch03/fig03_13_14/AccountTest.java
./ch04/Fig04_06_07/GradeBook.java
./ch04/Fig04_06_07/GradeBookTest.java
./ch04/Fig04_09_10/Оценка. java
./ch04/Fig04_09_10/GradeBookTest.java
./ch04/Fig04_12_13/Analysis.java
./ch04/Fig04_12_13/AnalysisTest.java
./ch04/Fig04_16/Increment.java
./ch04/Fig04_19_20/DrawPanel.java
./ch04/Fig04_19_20/DrawPanelTest.java
./ch04/ex04_06/Рассчитать.java
./ch04/ex04_16/Тайна.java
./ch04/ex04_25/Mystery2.java
./ch04/ex04_26/Mystery3.java
./ch05/fig05_01/WhileCounter.java
./ch05/fig05_02/ForCounter.java
./ch05/fig05_05/Сумма.java
./ch05/fig05_06/Интерес.java
./ch05/fig05_07/DoWhileTest.java
./ch05/fig05_09_10/Оценка.java
./ch05/fig05_09_10/GradeBookTest.java
./ch05/fig05_12/BreakTest.java
./ch05/fig05_13/ContinueTest.java
./ch05/fig05_18/Логические операторы.java
./ch05/fig05_26_27/Shapes.java
./ch05/fig05_26_27/ShapesTest.java
./ch06/exercise06_03/MathTest.java
./ch06/exercise06_06/Sphere.java
./ch06/exercise06_06/SphereTest.java
./ch06/fig06_03_04/MaximumFinder.java
./ch06/fig06_03_04/MaximumFinderTest.java
./ch06/fig06_07/RandomIntegers.java
./ch06/fig06_08/RollDie.java
./ch06/fig06_09_10/Крэпс. java
./ch06/fig06_09_10/КрэпсТест.java
./ch06/fig06_11_12/Scope.java
./ch06/fig06_11_12/ScopeTest.java
./ch06/fig06_13_14/MethodOverload.java
./ch06/fig06_13_14/MethodOverloadTest.java
./ch06/fig06_15/MethodOverloadError.java
./ch06/fig06_16_17/DrawSmiley.java
./ch06/fig06_16_17/DrawSmileyTest.java
./ch07/fig07_02/InitArray.java
./ch07/fig07_03/InitArray.java
./ch07/fig07_04/InitArray.java
./ch07/fig07_05/SumArray.java
./ch07/fig07_06/BarChart.java
./ch07/fig07_07/RollDie.java
./ch07/fig07_08/Опрос учащихся.java
./ch07/fig07_09_11/Card.java
./ch07/fig07_09_11/DeckOfCards.java
./ch07/fig07_09_11/TeckOfCardsTest.java
./ch07/fig07_12/EnhancedForTest.java
./ch07/fig07_13/PassArray.java
./ch07/fig07_14_15/GradeBook.java
./ch07/fig07_14_15/GradeBookTest.java
./ch07/fig07_17/InitArray.java
./ch07/fig07_18_19/GradeBook.java
./ch07/fig07_18_19/GradeBookTest.java
./ch07/fig07_20/VarargsTest.java
./ch07/fig07_21/InitArray.java
./ch07/fig07_22_23/DrawRainbow.java
./ch07/fig07_22_23/DrawRainbowTest. java
./ch08/fig08_01_02/Time1.java
./ch08/fig08_01_02/Time1Test.java
./ch08/fig08_03/MemberAccessTest.java
./ch08/fig08_03/Time1.java
./ch08/fig08_04/ThisTest.java
./ch08/fig08_05_06/Time2.java
./ch08/fig08_05_06/Time2Test.java
./ch08/fig08_07_09/Date.java
./ch08/fig08_07_09/Сотрудник.java
./ch08/fig08_07_09/EmployeeTest.java
./ch08/fig08_10_11/Book.java
./ch08/fig08_10_11/EnumTest.java
./ch08/fig08_12_13/Сотрудник.java
./ch08/fig08_12_13/EmployeeTest.java
./ch08/fig08_14/StaticImportTest.java
./ch08/fig08_15_16/Increment.java
./ch08/fig08_15_16/IncrementTest.java
./ch08/fig08_18_19/Time1.java
./ch08/fig08_18_19/Time1PackageTest.java
./ch08/fig08_20/PackageDataTest.java
./ch08/fig08_21_23/DrawPanel.java
./ch08/fig08_21_23/MyLine.java
./ch08/fig08_21_23/TestDraw.java
./ch09/fig09_04_05/CommissionEmployee.java
./ch09/fig09_04_05/CommissionEmployeeTest.java
./ch09/fig09_06_07/BasePlusCommissionEmployee.java
./ch09/fig09_06_07/BasePlusCommissionEmployeeTest.java
./ch09/fig09_08/BasePlusCommissionEmployee2. java
./ch09/fig09_08/CommissionEmployee.java
./ch09/fig09_09_11/BasePlusCommissionEmployee3.java
./ch09/fig09_09_11/BasePlusCommissionEmployeeTest3.java
./ch09/fig09_09_11/CommissionEmployee2.java
./ch09/fig09_12_14/BasePlusCommissionEmployee4.java
./ch09/fig09_12_14/BasePlusCommissionEmployeeTest4.java
./ch09/fig09_12_14/CommissionEmployee3.java
./ch09/fig09_15_17/BasePlusCommissionEmployee5.java
./ch09/fig09_15_17/CommissionEmployee4.java
./ch09/fig09_15_17/ConstructorTest.java
./ch09/fig09_19/GUItip.gif
./ch09/fig09_19/LabelDemo.java
./ch20/Fig10_01/BasePlusCommissionEmployee4.java
./ch20/Fig10_01/CommissionEmployee3.java
./ch20/Fig10_01/Тест полиморфизма.java
./ch20/Fig10_04_09/BasePlusCommissionEmployee.java
./ch20/Fig10_04_09/CommissionEmployee.java
./ch20/Fig10_04_09/Сотрудник.java
./ch20/Fig10_04_09/HourlyEmployee.java
./ch20/Fig10_04_09/PayrollSystemTest.java
./ch20/Fig10_04_09/SalariedEmployee.java
./ch20/Fig10_11_15/Сотрудник.java
./ch20/Fig10_11_15/Invoice.java
./ch20/Fig10_11_15/Payable. java
./ch20/Fig10_11_15/PayableInterfaceTest.java
./ch20/Fig10_11_15/SalariedEmployee.java
./ch21/fig11_02/Addition.java
./ch21/fig11_06_07/LabelFrame.java
./ch21/fig11_06_07/LabelTest.java
./ch21/fig11_06_07/bug1.GIF
./ch21/fig11_06_07/bug1.png
./ch21/fig11_09_10/TextFieldFrame.java
./ch21/fig11_09_10/TextFieldTest.java
./ch21/fig11_15_16/ButtonFrame.java
./ch21/fig11_15_16/ButtonTest.java
./ch21/fig11_15_16/bug1.GIF
./ch21/fig11_15_16/bug2.GIF
./ch21/fig11_17_18/CheckBoxFrame.java
./ch21/fig11_17_18/CheckBoxTest.java
./ch21/fig11_19_20/RadioButtonFrame.java
./ch21/fig11_19_20/RadioButtonTest.java
./ch21/fig11_21_22/ComboBoxFrame.java
./ch21/fig11_21_22/ComboBoxTest.java
./ch21/fig11_21_22/bug1.GIF
./ch21/fig11_21_22/bug2.GIF
./ch21/fig11_21_22/buganim.gif
./ch21/fig11_21_22/travelbug.gif
./ch21/fig11_23_24/ListFrame.java
./ch21/fig11_23_24/ListTest.java
./ch21/fig11_25_26/MultipleSelectionFrame.java
./ch21/fig11_25_26/MultipleSelectionTest.java
./ch21/fig11_28_29/MouseTracker.java
./ch21/fig11_28_29/MouseTrackerFrame. java
./ch21/fig11_31_32/MouseDetails.java
./ch21/fig11_31_32/MouseDetailsFrame.java
./ch21/fig11_34_35/PaintPanel.java
./ch21/fig11_34_35/Painter.java
./ch21/fig11_36_37/KeyDemo.java
./ch21/fig11_36_37/KeyDemoFrame.java
./ch21/fig11_39_40/FlowLayoutDemo.java
./ch21/fig11_39_40/FlowLayoutFrame.java
./ch21/fig11_41_42/BorderLayoutDemo.java
./ch21/fig11_41_42/BorderLayoutFrame.java
./ch21/fig11_43_44/GridLayoutDemo.java
./ch21/fig11_43_44/GridLayoutFrame.java
./ch21/fig11_45_46/PanelDemo.java
./ch21/fig11_45_46/PanelFrame.java
./ch21/fig11_47_48/TextAreaDemo.java
./ch21/fig11_47_48/TextAreaFrame.java
./ch22/fig12_05_06/ColorJPanel.java
./ch22/fig12_05_06/ShowColors.java
./ch22/fig12_07_08/ShowColors2.java
./ch22/fig12_07_08/ShowColors2JFrame.java
./ch22/fig12_11_12/FontJPanel.java
./ch22/fig12_11_12/Шрифты.java
./ch22/fig12_15_16/Metrics.java
./ch22/fig12_15_16/MetricsJPanel.java
./ch22/fig12_18_19/LinesRectsOvals.java
./ch22/fig12_18_19/LinesRectsOvalsJPanel.java
./ch22/fig12_24_25/ArcsJPanel. java
./ch22/fig12_24_25/DrawArcs.java
./ch22/fig12_27_28/DrawPolygons.java
./ch22/fig12_27_28/PolygonsJPanel.java
./ch22/fig12_29_30/Shapes.java
./ch22/fig12_29_30/ShapesJPanel.java
./ch22/fig12_31_32/Shapes2.java
./ch22/fig12_31_32/Shapes2JPanel.java
./ch23/ch23_01/DivideByZeroNoExceptionHandling.java
./ch23/ch23_02/DivideByZeroWithExceptionHandling.java
./ch23/ch23_05/UsingExceptions.java
./ch23/ch23_06/UsingExceptions.java
./ch23/ch23_07/UsingExceptions.java
./ch23/ch23_08/ИспользованиеChainedExceptions.java
./ch23/fig13_09/AssertTest.java
./ch24/fig14_04_05/ФайлДемонстрация.java
./ch24/fig14_04_05/FileDemonstrationTest.java
./ch24/fig14_04_05/Test.java
./ch24/fig14_06/AccountRecord.java
./ch24/fig14_07_09/CreateTextFile.java
./ch24/fig14_07_09/CreateTextFileTest.java
./ch24/fig14_11_12/ReadTextFile.java
./ch24/fig14_11_12/ReadTextFileTest.java
./ch24/fig14_13_15/CreditInquiry.java
./ch24/fig14_13_15/CreditInquiryTest.java
./ch24/fig14_13_15/MenuOption.java
./ch24/fig14_17/AccountRecordSerializable. java
./ch24/fig14_18_19/CreateSequentialFile.java
./ch24/fig14_18_19/CreateSequentialFileTest.java
./ch24/fig14_20_21/ReadSequentialFile.java
./ch24/fig14_20_21/ReadSequentialFileTest.java
./ch24/fig14_23/RandomAccessAccountRecord.java
./ch24/fig14_24_25/CreateRandomFile.java
./ch24/fig14_24_25/CreateRandomFileTest.java
./ch24/fig14_26_27/WriteRandomFile.java
./ch24/fig14_26_27/WriteRandomFileTest.java
./ch24/fig14_28_29/ReadRandomFile.java
./ch24/fig14_28_29/ReadRandomFileTest.java
./ch24/fig14_33_36/FileEditor.java
./ch24/fig14_33_36/MenuOption.java
./ch24/fig14_33_36/TransactionProcessor.java
./ch24/fig14_33_36/TransactionProcessorTest.java
./ch24/fig14_37_38/FileDemonstration.java
./ch24/fig14_37_38/FileDemonstrationTest.java
./ch25/fig15_03_04/FactorialCalculator.java
./ch25/fig15_03_04/FactorialTest.java
./ch25/fig15_05_06/FibonacciCalculator.java
./ch25/fig15_05_06/FibonacciTest.java
./ch25/fig15_10_11/FactorialCalculator.java
./ch25/fig15_10_11/FactorialTest.java
./ch25/fig15_12_13/Перестановка. java
./ch25/fig15_12_13/PermutationTest.java
./ch25/fig15_15_16/TowersOfHanoi.java
./ch25/fig15_15_16/TowersOfHanoiTest.java
./ch25/fig15_23_24/Fractal.java
./ch25/fig15_23_24/FractalJPanel.java
./ch26/Fig16_02_03/LinearArray.java
./ch26/Fig16_02_03/LinearSearchTest.java
./ch26/Fig16_04_05/BinaryArray.java
./ch26/Fig16_04_05/BinarySearchTest.java
./ch26/Fig16_06_07/SelectionSort.java
./ch26/Fig16_06_07/SelectionSortTest.java
./ch26/Fig16_08_09/InsertionSort.java
./ch26/Fig16_08_09/InsertionSortTest.java
./ch26/Fig16_10_11/MergeSort.java
./ch26/Fig16_10_11/MergeSortTest.java
./ch27/fig17_03/EmptyListException.java
./ch27/fig17_03/List.java
./ch27/fig17_03/ListTest.java
./ch27/fig17_10/StackInheritance.java
./ch27/fig17_10/StackInheritanceTest.java
./ch27/fig17_12/StackComposition.java
./ch27/fig17_12/StackCompositionTest.java
./ch27/fig17_13/Queue.java
./ch27/fig17_13/QueueTest.java
./ch27/fig17_17/Tree.java
./ch27/fig17_17/TreeTest.java
./ch28/fig18_01/Перегруженные методы.java
./ch28/fig18_03/GenericMethodTest. java
./ch28/fig18_05/МаксимумТест.java
./ch28/fig18_07_10/EmptyStackException.java
./ch28/fig18_07_10/FullStackException.java
./ch28/fig18_07_10/Stack.java
./ch28/fig18_07_10/StackTest.java
./ch28/fig18_11/EmptyStackException.java
./ch28/fig18_11/FullStackException.java
./ch28/fig18_11/Stack.java
./ch28/fig18_11/StackTest2.java
./ch28/fig18_12/EmptyStackException.java
./ch28/fig18_12/FullStackException.java
./ch28/fig18_12/RawTypeTest.java
./ch28/fig18_12/Stack.java
./ch28/fig18_14/TotalNumbers.java
./ch28/fig18_14/TotalNumbersErrors.java
./ch28/fig18_15/WildcardTest.java
./ч29/fig19_02/Использование массивов.java
./ch29/fig19_03/CollectionTest.java
./ch29/fig19_04/ListTest.java
./ch29/fig19_05/UsingToArray.java
./ch29/fig19_06/VectorTest.java
./ch29/fig19_08/Sort1.java
./ch29/fig19_09/Sort2.java
./ch29/fig19_10_11/Sort3.java
./ch29/fig19_10_11/Time2.java
./ch29/fig19_10_11/TimeComparator.java
./ch29/fig19_12/DeckOfCards.java
./ch29/fig19_13/Algorithms1.java
./ch29/fig19_14/BinarySearchTest. java
./ch29/fig19_15/Algorithms2.java
./ch29/fig19_16/StackTest.java
./ch29/fig19_17/PriorityQueueTest.java
./ч29/fig19_18/SetTest.java
./ch29/fig19_19/SortedSetTest.java
./ch29/fig19_20/WordTypeCount.java
./ch29/fig19_21/PropertiesTest.java
./ch29/fig19_21/props.dat
./ch30/fig20_06/WelcomeApplet.html
./ch30/fig20_06/WelcomeApplet.java
./ch30/fig20_10/AdditionApplet.html
./ch30/fig20_10/AdditionApplet.java
./ch31/Fig21_06_07/MediaPanel.java
./ch31/Fig21_06_07/MediaTest.java
./ch31/Fig21_06_07/bailey.mpg
./ch31/fig21_01/LoadImageAndScale.html
./ch31/fig21_01/LoadImageAndScale.java
./ch31/fig21_01/Logo.gif
./ch31/fig21_01/Thumbs.db
./ch31/fig21_01/redflowers.png
./ch31/fig21_01/желтые цветы.png
./ch31/fig21_02_03/images/Thumbs.db
./ch31/fig21_02_03/images/deitel0.gif
./ch31/fig21_02_03/images/deitel1.gif
./ch31/fig21_02_03/images/deitel10.gif
./ch31/fig21_02_03/images/deitel11.gif
./ch31/fig21_02_03/images/deitel12.gif
./ch31/fig21_02_03/images/deitel13.gif
./ch31/fig21_02_03/images/deitel14. gif
./ch31/fig21_02_03/images/deitel15.gif
./ch31/fig21_02_03/images/deitel16.gif
./ch31/fig21_02_03/images/deitel17.gif
./ch31/fig21_02_03/images/deitel18.gif
./ch31/fig21_02_03/images/deitel19.gif
./ch31/fig21_02_03/images/deitel2.gif
./ch31/fig21_02_03/images/deitel20.gif
./ch31/fig21_02_03/images/deitel21.gif
./ch31/fig21_02_03/images/deitel22.gif
./ch31/fig21_02_03/images/deitel23.gif
./ch31/fig21_02_03/images/deitel24.gif
./ch31/fig21_02_03/images/deitel25.gif
./ch31/fig21_02_03/images/deitel26.gif
./ch31/fig21_02_03/images/deitel27.gif
./ch31/fig21_02_03/images/deitel28.gif
./ch31/fig21_02_03/images/deitel29.gif
./ch31/fig21_02_03/images/deitel3.gif
./ch31/fig21_02_03/images/deitel4.gif
./ch31/fig21_02_03/images/deitel5.gif
./ch31/fig21_02_03/images/deitel6.gif
./ch31/fig21_02_03/images/deitel7.gif
./ch31/fig21_02_03/images/deitel8.gif
./ch31/fig21_02_03/images/deitel9.gif
./ch31/fig21_02_03/LogoAnimator.java
./ch31/fig21_02_03/LogoAnimatorJPanel.java
./ch31/fig21_04/ImageMap.html
. /ch31/fig21_04/ImageMap.java
./ch31/fig21_04/icons.png
./ch31/fig21_05/LoadAudioAndPlay.html
./ch31/fig21_05/LoadAudioAndPlay.java
./ch31/fig21_05/hi.au
./ch31/fig21_05/welcome.wav
./ch32/fig22_01_02/TextAreaDemo.java
./ch32/fig22_01_02/TextAreaFrame.java
./ch32/fig22_03_05/CustomPanel.java
./ch32/fig22_03_05/CustomPanelTest.java
./ch32/fig22_03_05/DrawFrame.java
./ch32/fig22_06_08/com/deitel/jhtp6/ch32/SelfContainedPanel.java
./ch32/fig22_06_08/CustomFrame.java
./ch32/fig22_06_08/SelfContainedPanelTest.java
./ch32/fig22_10_12/OvalPanel.java
./ch32/fig22_10_12/SliderDemo.java
./ch32/fig22_10_12/SliderFrame.java
./ch32/fig22_11_12/DesktopFrame.java
./ch32/fig22_11_12/DesktopTest.java
./ch32/fig22_11_12/лавандацветы.png
./ch32/fig22_11_12/purpleflowers.png
./ch32/fig22_11_12/redflowers.png
./ch32/fig22_11_12/redflowers2.png
./ch32/fig22_11_12/желтые цветы.png
./ch32/fig22_13_14/JTabbedPaneDemo.java
./ch32/fig22_13_14/JTabbedPaneFrame.java
./ch32/fig22_13_14/MenuFrame.java
./ch32/fig22_13_14/MenuTest. java
./ch32/fig22_15_16/PopupFrame.java
./ch32/fig22_15_16/PopupTest.java
./ch32/fig22_16_17/BoxLayoutDemo.java
./ch32/fig22_16_17/BoxLayoutFrame.java
./ch32/fig22_17_18/LookAndFeelDemo.java
./ch32/fig22_17_18/LookAndFeelFrame.java
./ch32/fig22_19_20/Рабочий столFrame.java
./ch32/fig22_19_20/DesktopTest.java
./ch32/fig22_19_20/лавандацветы.png
./ch32/fig22_19_20/purpleflowers.png
./ch32/fig22_19_20/redflowers.png
./ch32/fig22_19_20/redflowers2.png
./ch32/fig22_19_20/желтые цветы.png
./ch32/fig22_21_22/GridBagDemo.java
./ch32/fig22_21_22/GridBagFrame.java
./ch32/fig22_21_22/JTabbedPaneDemo.java
./ch32/fig22_21_22/JTabbedPaneFrame.java
./ch32/fig22_23_24/GridBagDemo2.java
./ch32/fig22_23_24/GridBagFrame2.java
./ch32/fig22_24_25/BoxLayoutDemo.java
./ch32/fig22_24_25/BoxLayoutFrame.java
./ch32/fig22_29_30/GridBagDemo.java
./ch32/fig22_29_30/GridBagFrame.java
./ch32/fig22_2_4/OvalPanel.java
./ch32/fig22_2_4/SliderDemo.java
./ch32/fig22_2_4/SliderFrame.java
./ch32/fig22_31_32/GridBagDemo2.java
. /ch32/fig22_31_32/GridBagFrame2.java
./ch32/fig22_5_6/MenuFrame.java
./ch32/fig22_5_6/MenuTest.java
./ch32/fig22_7_8/PopupFrame.java
./ch32/fig22_7_8/PopupTest.java
./ch32/fig22_9_10/LookAndFeelDemo.java
./ch32/fig22_9_10/LookAndFeelFrame.java
./ch33/fig23_04_05/PrintTask.java
./ch33/fig23_04_05/PrintThread.java
./ch33/fig23_04_05/RunnableTester.java
./ch33/fig23_04_05/ThreadTester.java
./ch33/fig23_06_10/Buffer.java
./ch33/fig23_06_10/Consumer.java
./ch33/fig23_06_10/Producer.java
./ch33/fig23_06_10/SharedBufferTest.java
./ch33/fig23_06_10/UnsynchronizedBuffer.java
./ch33/fig23_11_12/Buffer.java
./ch33/fig23_11_12/Consumer.java
./ch33/fig23_11_12/Producer.java
./ch33/fig23_11_12/SharedBufferTest2.java
./ch33/fig23_11_12/SynchronizedBuffer.java
./ch33/fig23_13_14/Buffer.java
./ch33/fig23_13_14/CircularBuffer.java
./ch33/fig23_13_14/CircularBufferTest.java
./ch33/fig23_13_14/Consumer.java
./ch33/fig23_13_14/Producer.java
./ch33/fig23_15_16/BlockingBuffer.java
./ch33/fig23_15_16/BlockingBufferTest. java
./ch33/fig23_15_16/Buffer.java
./ch33/fig23_15_16/Consumer.java
./ch33/fig23_15_16/Producer.java
./ch33/fig23_17_18/RandomCharacters.java
./ch33/fig23_17_18/RunnableObject.java
./ch33/fig23_19_20/Buffer.java
./ch33/fig23_19_20/Consumer.java
./ch33/fig23_19_20/Producer.java
./ch33/fig23_19_20/SharedBufferTest2.java
./ch33/fig23_19_20/SynchronizedBuffer.java
./ch34/DeitelMessengerCaseStudy/com/deitel/messenger/images/Connect.gif
./ch34/DeitelMessengerCaseStudy/com/deitel/messenger/images/Disconnect.gif
./ch34/DeitelMessengerCaseStudy/com/deitel/messenger/images/Send.gif
./ch34/DeitelMessengerCaseStudy/ClientGUI.java
./ch34/DeitelMessengerCaseStudy/DeitelMessenger.java
./ch34/DeitelMessengerCaseStudy/DeitelMessengerServer.java
./ch34/DeitelMessengerCaseStudy/DeitelMessengerServerTest.java
./ch34/DeitelMessengerCaseStudy/MessageListener.java
./ch34/DeitelMessengerCaseStudy/MessageManager.java
./ch34/DeitelMessengerCaseStudy/MessageReceiver.java
./ch34/DeitelMessengerCaseStudy/MessageSender. java
./ch34/DeitelMessengerCaseStudy/MulticastSender.java
./ch34/DeitelMessengerCaseStudy/PacketReceiver.java
./ch34/DeitelMessengerCaseStudy/SocketMessageManager.java
./ch34/DeitelMessengerCaseStudy/SocketMessengerConstants.java
./ch34/fig24_01_02/SiteSelector.html
./ch34/fig24_01_02/SiteSelector.java
./ch34/fig24_03_04/ReadServerFile.java
./ch34/fig24_03_04/ReadServerFileTest.java
./ch34/fig24_05_08/Client.java
./ch34/fig24_05_08/ClientTest.java
./ch34/fig24_05_08/Server.java
./ch34/fig24_05_08/ServerTest.java
./ch34/fig24_09_12/Клиент.java
./ch34/fig24_09_12/ClientTest.java
./ch34/fig24_09_12/Server.java
./ch34/fig24_09_12/ServerTest.java
./ch34/fig24_13_16/TicTacToeClient.java
./ch34/fig24_13_16/TicTacToeClientTest.java
./ch34/fig24_13_16/TicTacToeServer.java
./ch34/fig24_13_16/TicTacToeServerTest.java
./ch35/Fig25_25/DisplayAuthors.java
./ch35/Fig25_28_31/DisplayQueryResults.java
./ch35/Fig25_28_31/ResultSetTableModel.java
./ch35/Fig25_32/JdbcRowSetTest.java
./ch35/books.sql
./ch35/сотрудники. sql
./ch36/com/deitel/jhtp6/servlets/SurveyServlet_DataSource.java
./ch36/examples/com/deitel/jhtp6/servlets/SurveyServlet_DataSource.java
./ch36/examples/fig_06_07/WelcomeServlet.html
./ch36/examples/fig_06_07/WelcomeServlet.java
./ch36/примеры/fig_10/web.xml
./ch36/examples/fig_12_13/WelcomeServlet2.html
./ch36/examples/fig_12_13/WelcomeServlet2.java
./ch36/examples/fig_15_16/WelcomeServlet3.html
./ch36/examples/fig_15_16/WelcomeServlet3.java
./ch36/примеры/fig_18_19/RedirectServlet.html
./ch36/examples/fig_18_19/RedirectServlet.java
./ch36/examples/fig_21_22/Опрос.html
./ch36/examples/fig_21_22/SurveyServlet.java
./ch36/examples/fig_24/index.html
./ch36/примеры/animalsurvey.sql
./ch36/примеры/faq.sql
./ch36/примеры/опрос.sql
./ch36/примеры/web.xml
./ch36/fig_06_07/WelcomeServlet.html
./ch36/fig_06_07/WelcomeServlet.java
./ch36/fig_10/web.xml
./ch36/fig_12_13/WelcomeServlet2.html
./ch36/fig_12_13/WelcomeServlet2.java
./ch36/fig_15_16/WelcomeServlet3.html
./ch36/fig_15_16/WelcomeServlet3. java
./ch36/fig_18_19/RedirectServlet.html
./ch36/fig_18_19/RedirectServlet.java
./ch36/fig_21_22/Обзор.html
./ch36/fig_21_22/SurveyServlet.java
./ch36/fig_24/index.html
./ch36/animalsurvey.sql
./ch36/faq.sql
./ch36/обзор.sql
./ch36/веб.xml
./ch37/Fig27_01/clock.jsp
./ch37/Fig27_04/welcome.jsp
./ch37/Fig27_07_10/banner.html
./ch37/Fig27_07_10/clock2.jsp
./ch37/Fig27_07_10/include.jsp
./ch37/Fig27_07_10/toc.html
./ch37/Fig27_11_12/forward1.jsp
./ch37/Fig27_11_12/forward2.jsp
./ch37/Fig27_14_15/images/Thumbs.db
./ch37/Fig27_14_15/images/advjHTP1.jpg
./ch37/Fig27_14_15/images/cppHTP4.jpg
./ch37/Fig27_14_15/images/iw3HTP2.jpg
./ch37/Fig27_14_15/images/jwsFEP1.jpg
./ch37/Fig27_14_15/images/logotiny.png
./ch37/Fig27_14_15/images/vbnetHTP2.jpg
./ch37/Fig27_14_15/Rotator.java
./ch37/Fig27_14_15/adrotator.jsp
./ch37/Fig27_19/includeDirective.jsp
./ch37/Fig27_20_24/GuestBean.java
./ch37/Fig27_20_24/GuestDataBean.java
./ch37/Fig27_20_24/guestBookErrorPage.jsp
./ch37/Fig27_20_24/guestBookLogin.jsp
. /ch37/Fig27_20_24/guestBookView.jsp
./ch37/адресная книга.sql
./ch37/гостевая книга.sql
./ch38/Fig28_02/IntegerConversionTest.java
./ch38/Fig28_04/FloatingNumberTest.java
./ch38/Fig28_05/CharStringConversion.java
./ch38/Fig28_09/DateTimeTest.java
./ch38/Fig28_11/OtherConversion.java
./ch38/Fig28_12/FieldWidthTest.java
./ch38/Fig28_13/PrecisionTest.java
./ch38/Fig28_15/MinusFlagTest.java
./ch38/Fig28_16/PlusFlagTest.java
./ch38/Fig28_17/SpaceFlagTest.java
./ch38/Fig28_18/PoundFlagTest.java
./ch38/Fig28_19/ZeroFlagTest.java
./ch38/Fig28_20/CommaFlagTest.java
./ch38/Fig28_21/RenthesesFlagTest.java
./ch38/Fig28_22/ArgumentIndexTest.java
./ch38/Fig28_24/FormatterTest.java
./ch39/fig29_01/StringConstructors.java
./ch39/fig29_02/StringMiscellaneous.java
./ch39/fig29_03/StringCompare.java
./ch39/fig29_04/StringStartEnd.java
./ch39/fig29_05/StringIndexMethods.java
./ch39/fig29_06/SubString.java
./ch39/fig29_07/StringConcatenation.java
./ch39/fig29_08/StringMiscellaneous2.java
./ch39/fig29_09/StringValueOf. java
./ч39/fig29_10/StringBufferConstructors.java
./ch39/fig29_11/StringBufferCapLen.java
./ch39/fig29_12/StringBufferChars.java
./ch39/fig29_13/StringBufferAppend.java
./ch39/fig29_14/StringBufferInsert.java
./ch39/fig29_15/StaticCharMethods.java
./ch39/fig29_16/StaticCharMethods2.java
./ch39/fig29_17/ДругиеCharMethods.java
./ch39/fig29_18/TokenTest.java
./ch39/fig29_20_21/Validate.java
./ch39/fig29_20_21/ValidateInput.java
./ch39/fig29_23/RegexSubstitution.java
./ch39/fig29_24/RegexMatches.java
./create_this_page
./index.html
 

Документация JDK 19 — Главная

  1. Домашняя
  2. Ява
  3. Java SE
  4. 19

Обзор

  • Прочтите меня
  • Примечания к выпуску
  • Что нового
  • Руководство по миграции
  • Загрузить JDK
  • Руководство по установке
  • Формат строки версии

Инструменты

  • Технические характеристики инструментов JDK
  • Руководство пользователя JShell
  • Руководство по JavaDoc
  • Руководство пользователя средства упаковки

Язык и библиотеки

  • Обновления языка
  • Основные библиотеки
  • HTTP-клиент JDK
  • Учебники по Java
  • Модульный JDK
  • Руководство программиста API бортового регистратора
  • Руководство по интернационализации

Технические характеристики

  • Документация API
  • Язык и ВМ
  • Имена стандартных алгоритмов безопасности Java
  • банка
  • Собственный интерфейс Java (JNI)
  • Инструментальный интерфейс JVM (JVM TI)
  • Сериализация
  • Проводной протокол отладки Java (JDWP)
  • Спецификация комментариев к документации для стандартного доклета
  • Другие характеристики

Безопасность

  • Руководство по безопасному кодированию
  • Руководство по безопасности

Виртуальная машина HotSpot

  • Руководство по виртуальной машине Java
  • Настройка сборки мусора

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

  • Руководство по устранению неполадок
  • Руководство по мониторингу и управлению
  • Руководство по JMX

Client Technologies

  • Руководство по специальным возможностям Java

Examples-WorldWind Java/NASA WorldWind

Examples


WorldWind API содержит более 100 примеров кода, которые показывают, как выполнять самые разные задачи, от создания самого простого приложения WorldWind до использования сложных расширенных функций.

Ниже приведены краткие описания некоторых примеров программ. Все примеры можно найти в репозитории GitHub.

  1. Basics
  2. Layers
  3. View
  4. Data
  5. Terrain
  6. Shapes
  7. Annotations
  8. Images
  9. User Interface
  10. Network
  11. Configuration
  12. Tools
  13. Multiwindow

Basics

SimplestPossibleExample — Демонстрирует самый простой способ создания приложения WorldWind.

HelloWorldWind — Подробно показывает, как создать базовую программу WorldWind.

ApplicationTemplate — предоставляет базовую структуру приложения для простых примеров WorldWind.

Завершение работы — Показывает, как закрыть WorldWindow и как закрыть весь WorldWind.


Слои

OnScreenLayerManager — Демонстрирует экранный менеджер слоев с помощью LayerManagerLayer.

WMSLayerManager — Демонстрирует использование нескольких слоев WMS, отображаемых в WMSLayersPanel.

LayerTreeUsage — использует BasicTree для отображения списка слоев.

GRATICULE — Отображает глобус с широтой и долготы Graticule (широта и долгота)

Mgrsgraticure — Отображает глобус с MGRS/UTM GRATICULE


VIEW

9000 2 9000 261616161616161616 гг. осматривайте сцену, управляя углом обзора, направлением, вращением и полем зрения, в данном случае с помощью простого набора ползунков.

ViewIteration — Демонстрирует, как анимировать представление из одной точки земного шара в другую.

AddAnimator — Демонстрирует использование BasicFlyView с FlyToFlyViewAnimator, позволяя пользователю плавно летать в новые местоположения, просто указав имя местоположения или координаты широты и долготы.

ViewSwitch — демонстрирует разницу между BasicOrbitView и BasicFlyView. Позволяет пользователю выбрать предпочтительный тип вида, а затем ввести имя или координаты широты и долготы нового местоположения, для которого нужно анимировать вид.

ViewLimits — Демонстрирует, как удерживать представление в определенных пределах.

KeepingObjectsInView — демонстрирует видимость набора элементов сцены с помощью служебного класса ExtentVisibilitySupport.

ViewControls — показывает ViewControlsLayer и позволяет настроить его размер, ориентацию и доступные элементы управления.


Данные

Массовая загрузка — иллюстрирует, как использовать WorldWind для массового извлечения данных из слоев и моделей высот из удаленного источника.

DataInstallerAp — Предоставляет интерактивные средства для установки данных на клиенте.

Шейп-файлы — показывает, как импортировать шейп-файлы ESRI в WorldWind.

ExtrudedPolygonsFromShapefile — Показывает, как загружать вытянутые формы из шейп-файлов.

VPFLayerDemo — показывает, как импортировать данные из базы данных в формате векторного продукта (VPF) в WorldWind.

FlatWorldEartquakes — Демонстрирует, как использовать EarthFlat и FlatOrbitView для отображения RSS-потока последних землетрясений Геологической службы США.

GeoRSS — показывает, как создать фигуру из документа GeoRSS. В этом примере создаются две фигуры из жестко запрограммированных примеров документов GeoRSS.

SkankortDenmark — Демонстрирует изображения с высоким разрешением (0,2 метра на пиксель) и данные о высоте (1,6 метра на пиксель), обслуживаемые WorldWind WMS и визуализируемые Java-клиентом WorldWind.

SurfaceImageViewer — Демонстрирует, как открывать и просматривать произвольные изображения поверхности и высоты, которые имеют сопровождающий файл привязки.

ExportImageOrElevations — демонстрирует использование утилиты SectorSelector для сохранения выбранного изображения и/или высот в файл GeoTIFF.

GetBestElevations — получение высот с самым высоким разрешением, доступных для текущей модели высот, рисование их с сервера при необходимости.


Terrain

TerrainProfiler — показывает TerrainProfileLayer в действии с его различными элементами управления.

TerrainIntersection — Показывает, как вычислять пересечения местности, используя данные о местности с самым высоким разрешением, доступные из модели рельефа земного шара.

ContourLines — Показывает, как отображать контурные линии в WorldWind на поверхности местности на заданной высоте.

BathymetryRemoval — Показывает, как подавить батиметрию WorldWind Globe (высоты ниже среднего уровня моря) с помощью BathymetryFilterElevationModel.

DetailHints — иллюстрирует, как управлять деталями ElevationModel и TiledImageLayer с помощью их свойств подробностей.

DimGlobeSurfac — показывает, как разместить слой над ландшафтом, чтобы затемнить его.


Фигуры

Фигуры — Показывает, как позволить пользователю создавать формы пути и поверхности на глобусе и изменять их параметры с помощью простого пользовательского интерфейса.

Airspaces — показывает, как настраивать и отображать формы WorldWind Airspace.

AirspaceBuilder — иллюстрирует создание во время выполнения трехмерных экструдированных многоугольников и сфер с использованием форм WorldWind Airspace.

ExtrudedPolygons — Показывает, как использовать WorldWind ExtrudedPolygons.

ExtrudedShapes — Демонстрирует, как создавать ExtrudedPolygons с верхней и боковой текстурами.

ExtrudedPolygonBuilder — Показывает, как построить инструмент для создания и редактирования ExtrudedPolygons на поверхности земного шара.

LineBuilder — позволяет пользователю интерактивно строить полилинию.

LineBackground — показывает, как отображать линии, выделяющиеся на фоне изображения.

Пути — Показывает, как использовать конструкцию WorldWind Path.

PathsWithDirection — Показывает, как нарисовать путь со стрелками направления между точками.

Многоугольники — Показывает, как использовать формы многоугольников WorldWind.

RigidShapes — демонстрирует использование различных жестких форм: эллипсоид, параллелепипед, цилиндр, конус, пирамида и клин.

RigidShapeBuilder — Показывает, как создать инструмент для создания и редактирования трехмерных фигур и размещения их на глобусе. Возможные формы включают жесткие формы (эллипсоид, прямоугольник, цилиндр, конус, пирамида и клин), а также ExtrudedPolygon.

Эллипсоиды — показывает, как использовать жесткую форму эллипсоида WorldWind для отображения эллипсоида произвольного размера и ориентации на глобусе.

Ящики — Показывает, как использовать жесткую форму Коробки WorldWind для отображения на глобусе коробки произвольного размера и ориентации.

Цилиндры — показывает, как использовать жесткую форму цилиндра WorldWind для отображения цилиндра произвольного размера и ориентации на глобусе.

Конусы — показывает, как использовать жесткую форму WorldWind Cone для отображения конуса произвольного размера и ориентации на глобусе.

Пирамида — иллюстрирует, как использовать жесткую форму WorldWind Pyramid для отображения пирамиды произвольного размера и ориентации на глобусе.

Клинья — иллюстрирует, как использовать жесткую форму WorldWind Wedge для отображения клина произвольного размера и ориентации на глобусе.

RotatedSector — показывает вращение SurfaceQuad в форме сектора из стандартного положения.


Аннотации

Аннотации — показывает, как использовать аннотацию WorldWind для отображения информации на экране пользователю в виде текстовой метки с дополнительным изображением.

AnnotationControls — показывает, как использовать аннотацию WorldWind с AnnotationLayoutManager для отображения аннотации с простым встроенным пользовательским интерфейсом.

Выноски — показывает, как использовать WorldWind Balloon для отображения информации на экране пользователю в виде выровненного по экрану текстового выноски.

WebBrowserBalloons — иллюстрирует, как использовать всплывающие подсказки браузера WorldWind для отображения содержимого HTML, JavaScript и Flash пользователю в виде выровненной по экрану всплывающей подсказки.

TacticalGraphics и TacticalSymbol — показывает примеры реализации WorldWind 2525C.

Маркеры — Отображает маркеры (маленьких форм) различных форм и цветов.

MarkersOrder — Показывает, как управлять атрибутами маркеров дорожки, чтобы своевременно передавать их порядок.

GPSTracks — Демонстрирует отображение треков GPS с использованием маркеров.

Метки — Показывает, как использовать PointPlacemark.

Названия мест — Демонстрирует, как настроить отображаемые названия мест (названия стран, океанов, городов и т. д.).

PathsWithLabels — Демонстрирует, как нарисовать путь с прикрепленной к нему текстовой аннотацией.

AlarmIcons — Показывает, как отобразить значок с состоянием тревоги с помощью WorldWind WWIcon.

GridOfPoints — использует PointGrid для рисования сетки точек на местности, равномерно распределяя их по области, определяемой четырехсторонним многоугольником.


Изображения

SurfaceImages — Демонстрирует, как использовать класс SurfaceImage для размещения изображений на поверхности земного шара.

RemoteSurfaceImage — демонстрирует, как получить удаленное изображение и отобразить его как SurfaceImage.

RubberSheetImage — демонстрирует использование класса SurfaceImage для создания изображения «резинового листа», которое можно произвольно располагать, масштабировать и деформировать на поверхности земного шара.

VideoOnTerrain — Показывает, как можно показывать видео на поверхности земного шара.

ScreenImageDragging — Демонстрирует использование класса ScreenImage и показывает, как использовать его для создания изображения, которое можно перетаскивать по экрану с помощью мыши.


Пользовательский интерфейс

ContextMenusOnShapes — показывает, как прикреплять контекстные (всплывающие) меню к фигурам.

DeepPicking — Показывает, как заставить все элементы под курсором в WorldWindow сообщаться в SelectEvents.

PickFrustum — Показывает, как изменить размер усеченного конуса.

SplitPaneUsage — показывает, как использовать WorldWind в Swing JSplitPane.

TabbedPaneUsage — демонстрирует использование панелей с вкладками.


Сеть

NetworkOfflineMode — Показывает, как отключить WorldWind от сети и снова подключить.

LocalDataOnly — Показывает, как работать с WorldWind полностью локально, получая данные только из локальных кэшей.


Конфигурация

FlatWorld — Демонстрирует, как отобразить плоский глобус вместо круглого.

Настройка GLRuntimeCapabilities — показывает, как настроить функции WorldWind OpenGL с помощью GLRuntimeCapabilities.

CustomElevationModel — Показывает, как настроить WorldWind с пользовательской ElevationModel из файла конфигурации.

Стерео — Показывает, как настроить WorldWind для отображения земного шара в стерео.


Инструменты

LoggingControl — иллюстрирует управление и перенаправление регистрации WorldWind.

WorldWindDiagnostics — Показывает, как выводить расширенную диагностическую информацию о конфигурации системы пользователя.

Скриншоты — Демонстрирует, как делать снимки экрана с помощью WWJ, используя класс ScreenShotAction.

LinesOfSight — вычисляет и отображает пересечения линий прямой видимости для Terrain и визуализируемых объектов с использованием данных высот с самым высоким разрешением, связанных с указанным глобусом.

AbstractShapeIntersection — Показывает, как определить и отобразить пересечение линии с эллипсоидом или другими жесткими фигурами.

ExtrudedPolygonIntersection — Показывает, как определить и отобразить пересечение линии с ExtrudedPolygon.

PolygonIntersection — Показывает, как определить и отобразить пересечение линии с многоугольником.

SectorSelection — демонстрирует использование утилиты SectorSelector.

SimpleShapeDragging — демонстрирует использование класса BasicDragger для перетаскивания фигуры по всему миру.

DraggingShapes — иллюстрирует, как использовать BasicDragger для создания нескольких фигур на поверхности, которые сохраняют свою форму при перетаскивании.

TreeControl — Демонстрирует использование элемента управления деревом на экране с помощью BasicTree.

TreeFiltering — Демонстрирует использование BasicQuadTree для ограничения отображаемых маркеров в коллекции маркерами в определенном регионе.

MeasureToolUsage — Показывает, как использовать MeasureTool для рисования фигуры на глобусе и измерения длины, площади и т. д.

GazeteerApp — Показывает, как интегрировать функцию поиска в географическом справочнике в WorldWindow с помощью YahooGazetteer.

DataCacheViewer — показывает, как создать инструмент, позволяющий пользователю просматривать и удалять кэшированные файлы WorldWind в зависимости от их возраста.


Многооконный

Многооконный — Показывает, как создать два WorldWindows, каждый в своем собственном JFrame. WorldWindows разделяет глобус и несколько слоев.

CardLayoutUsage — показывает, как использовать несколько окон WorldWind с менеджером слоев CardLayout.