The Visual J++ Handbook

Brian Maso


                    Osborne McGraw-Hill
    Berkeley Ne\v York Si. Louis San Francisco 
    Auckland Bogota Hamburg London Madrid
Mexico (lily Milan Montreal New Delhi Parama City
        Paris Sao Paulo Singapore Sydney
                           Tokyo Toronto

УДК 681.3.06
Брайан Мейсо

Visual J++: основы программирования: Пер. с англ. — К.: Издательская группа BHV,
1997. - 400 с. FSBN 5-7315-0009-6

В этой книге приведено описание новой среды программирования — Visual J++ фирмы Microsoft. 
Она содержит информацию о возможностях языка Java, синтаксисе команд, классах Java и работе 
с ними. Кроме того, в книгу включены главы, посвященные созданию и отладке Java-программ, 
написанию Java-программ для среды Windows и WWW и программ обработки баз данных.

ISBN 0-07-882266-1	© McGraw-Hill, Osborne 1997

ISBN 5-7315-0009-6	© Издательская группа BHV, Киев, 1997

АЛ. Стеценко, обложка


    Введение 

    Java. Надежды и шумиха 

    Несомненно, за последнее время вы немало слышали о языке Java. Его 
называют сетевым стандартом для исполняемых модулей, системой передачи 
мультимедийных объектов, "следующей волной WWW' и даже "убийцей Visual Basic" 
и "убийцей C++". Не кажется ли странным тот факт, что такое внимание уделяется 
всего лишь одному из языков программирования? Java отличается столькими 
превосходными особенностями, что по большому счету вся эта шумиха вполне 
заслужена или, во всяком случае, не совсем не заслужена. Поскольку вы уже 
купили или по крайней мере думаете приобрести эту книгу, будем считать, что вы 
это признаете. 
    У вас неплохие единомышленники. Корпорация Microsoft Corp. также уверена в 
блестящем будущем языка Java. Помимо того что ею создана визуальная 
интегрированная среда разработки для программирования на языке Java, 
корпорация закупила лицензии с целью включения Java в будущие операционные 
системы. Это свидетельствует о признании преимуществ языка гигантом индустрии, 
который обычно сам осуществляет компьютерные революции, а не покупает лицензии 
у других компаний. 
    Цель настоящей книги — предоставить все "за и против" Visual J++, 
визуальной среды компании Microsoft, предназначенной для программирования на 
языке Java. Если вы уже используете Visual J++ или собираетесь сделать это, 
книга даст вам ценные сведения о первой среде разработки на языке Java для 
Windows, сэкономив таким образом ваше время. 

    Особенности Java 

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

7

    С самого начала Java создавался как архитектурно-независимый язык. Это 
означает, что можно написать и откомпилировать Java-программу на платформе 
UNIX, а запустить исполняемые файлы на совершенно иной платформе, скажем, 
Windows 95. Java так абстрагируется от операционных систем и аппаратной 
реализации различных платформ, что все платформы воспринимаются программистом 
одинаково. Можно создать системно-зависимую Java-программу, которая требует 
ресурсов, доступных только на определенной платформе. Но эффективность 
архитектурно-независимого программирования существенно выше: достаточно 
написать программу один раз, и она будет выполняться на каждой платформе, 
поддерживающей Java. 
    Поскольку невероятный рост Internet благоприятствует распространению 
информации и программного обеспечения, возникла волна программирования для 
Internet. С учетом того, что сеть Internet состоит из миллионов машин с 
различными операционными системами и различными аппаратными средствами, вряд 
ли нашлось бы лучшее время для появления архитектурно-нейтрального языка Java. 
Будучи архитектурно независимым, Java совершенен для Internet. Создатели Java 
поняли это и внесли в язык множество возможностей, цель которых — поддержка 
работы в Internet. С помощью Java можно работать с протоколами HTTP и FTP с 
такой же легкостью, как с файлами ввода-вывода; через сеть можно пересылать 
исполняемыемые "апплеты" Java для запуска внутри WWW-страницы. 
    Существуют и другие методы пересылки исполняемых программ по Internet. К 
сожалению, передача выполняемого содержимого через сеть является "прекрасным" 
способом распространения вирусов. Разрушительные вирусы, которые уже ставили 
Internet "на колени" в недавнем прошлом, использовали "открытость" этой 
системы. Но в Java имеется встроенный механизм обеспечения безопасности, 
делающий распространение вирусов через Java-апплеты почти невозможным. Что 
касается жалоб на программные ограничения, налагаемые на создаваемые апплеты, 
то я предпочитаю ограничения Java "доверительным" механизмам в ActiveX. 
"Электронное доверие" — это такая же нелепость, как и "электронная любовь" или 
"электронная верность". В Java реализован очень серьезный подход к проблемам 
безопасности, что обеспечивает программистам и пользователям высокий уровень 
защищенности в Internet. Visual J++ 
    Если вы решили программировать на языке Java, вам хотелось бы выбрать 
наилучшую среду разработки, не так ли? Такой средой может служить Visual J++ — 
многофункциональная интегрированная среда разработки программ на платформе 
Win32 (Windows 95 и Windows NT). 
    Visual J++ является специальным модулем популярной среды разработки 
Developer's Studio фирмы Microsoft. Тот, кто уже знаком с Developer's Studio 
(в частности, по программированию на C++), сможет быстро освоить 
программирование на языке Java с использованием Visual J++. 

    Visual J++: основы программирования 8 

    У Visual J++ имеется несколько замечательных инструментов, облегчающих и 
ускоряющих программирование на Java. Утилита Applet Wizard помогает создавать 
апплеты почти без применения программирования. Различные опции, которые Applet 
Wizard использует при создании апплетов, представлены пользователю в 
популярном формате диалога, который легко применять даже без предварительного 
знакомства с документацией. 
    Некоторые другие возможности Visual J++ использовать сложнее. Поэтому и 
была написана данная книга. Для того чтобы получить максимум от Visual J++, 
сделать ваше программирование еще более быстрым, необходимо иметь руководство, 
написанное специалистом. 
    Применение моста Java/COM, встроенного в виртуальную машину Java для 
Windows, DAO API и RDO API требует подробного объяснения и примеров программ. 
Глава 7, которая достаточно доходчиво объясняет принципы использованиия 
СОМ-объектов в Java, а также преобразования объектов Java в СОМ-объекты, 
содержит много информации, ознакомление с которой опытным путем могло бы 
занять недели, а то и месяцы. В главе 10 представлены сведения (в электронной 
версии документации Visual J++ они отсутствуют) об DAO API и RDO API. 

    Как построена эта книга 

    Настоящее издание дает возможность читателю полностью овладеть языком Java 
и средой разработки Visual J++. Ниже приведено краткое содержание каждой главы. 
    Глава 1: Язык Java. Представлено подробное описание языка, предназначенное 
для программистов на C++. Глава поможет применить имеющийся у вас опыт 
объектно-ориентированного программирования для работы в Java. Рассказано о 
классах и объектах, о создании и удалении объектов, о синтаксисе Java. 
    Глава 2: Среда Visual J++. Изложена достаточно полная информация о Visual 
Java++, начиная с инсталляции и заканчивая использованием ее наиболее 
впечатляющих возможностей. Подробно описаны операции отладки, разработки и 
управления проектом, приведены примеры апплетов и приложений, и при этом нет 
"ловушек" для новичков или мест, требующих догадок. 
    Глава 3: Основы GUI. Рассказано об основах программирования оконного 
интерфейса. Классы и API, о которых здесь говорится, применяются не только в 
системе Windows, но и во всех других операционных системах, использующих окна, 
— от Macintosh до Х-Window и OS/2. Java предоставляет для них полностью 
системно-независимую модель окон. 
    Глава 4: Меню и управляющие элементы AWT. Описаны управляющие элементы GUI 
— полосы прокрутки, списки, кнопки. Ознакомившись с этой главой, читатель 
поймет, как можно быстро создать пользовательский интерфейс. 

Введение 9 

    Глава 5: Графика. Представлены возможности класса Graphics — единственного 
API, который применяется для отображения графики и текста в Java, а также 
раскрыты возможности анимации. 
    Глава 6: Апплеты. Рассказано об одной из наиболее мощных возможностей Java 
— апплетах, распространяемых по WWW. Концепция апплетов просто расширяет 
модель GUI в Java, но при этом открываются невероятные возможности для 
создания и оформления HTML-страниц. В главе рассказано о важнейших свойствах 
апплетов и связанной с ними системе безопасности. 
    Глава 7: Java и СОМ в Visual J++. Изложена информация о совместном 
использовании объектов Java и СОМ-объектов в виртуальной машине Java для 
Windows в системе Win32. Фирма Microsoft реализовала мост Java/COM, и в этой 
главе рассказывается, как его использовать. Прочитав главу, читатель сможет 
создавать и применять объекты Java из внешнего СОМ-кода и СОМ-объекты в коде Java. 
    Глава 8: Файлы ввода-вывода и потоки данных. Описана модель потоков данных 
в Java, используемая для ввода-вывода файлов и при работе с Internet. Для 
желающего программировать на языке Java знакомство с этой моделью просто необходимо. 
    Глава 9: Работа в сети. Рассказано, как осуществляются соединения через 
Internet. Поскольку функции работы в Internet закладывались в Java заранее, 
изучение настоящей главы, равно как и программирование для данной системы с 
использованием Java и Visual J++, не составит особых трудностей. 
    Глава 10: Программирование баз данных в Java. В Java имеется не менее трех 
API, предназначенных для программирования реляционных баз данных. В Visual J++ 
включены DAO API и RDO API. С помощью моста Java/COM их можно использовать в 
виртуальной машине для системы Windows. JDBC API разработан фирмой JavaSoft 
(сегодняшним владельцем языка Java) для создания системно-независимых баз данных. 
    Глава 11: Обзор классов Utility и Language. Описаны системные классы и 
классы хранения данных в Java. 
    Глава 12: Другие API Java. Представлен перечень API, находящихся в стадии 
разработки или еще не получивших широкого распространения. Хотя большинство из 
них недоступно в среде разработки Visual J++, иметь представление об этих 
интерфейсах просто необходимо — возможно, вам придется использовать их в будущем. 
    
    10     Visual J++: основы программирования 
