Управление поиском файлов. Создание приложения на Java.

Владимир | | Java.

Структура программы

Теперь посмотрим на структуру программы (рис.4). Я изобразил её в виде диаграммы классов. Эта и следующая диаграмма составлены в соответствии с правилами UML (unified modeling language – унифицированный язык моделирования). Если вы не знакомы с UML, то не беспокойтесь, я постараюсь подробно все объяснить, да и сами диаграммы достаточно простые. Но, если вы планируете заниматься разработкой больших приложений, то все же советую почитать какую-нибудь книгу или статью о UML. Это значительно упростит и ускорит процесс разработки (проверено на собственном опыте).

Диаграмма классов

Рис.4. Диаграмма классов

Давайте внимательно посмотрим на диаграмму. Все классы изображены в виде прямоугольников, в которых написаны их имена. Перед именем класса может идти имя объекта этого класса. Например, запись finder:FileFinder означает, что в программе есть объект с именем finder типа FileFinder.

Работа программы начинается с вызова метода main(…) (класс Main). Тут выполняется создание главного фрейма программы, на котором размещается основная панель (объект класса MainPanel) со всеми элементами управления.

Классы MainPanel и JPanel соединены сплошной линией с замкнутой стрелкой на конце. Это означает, что MainPanel является потомком JPanel. Таким образом, мы можем разместить MainPanel на фрейме и добавить на неё различные элементы управления (кнопки, надписи, текстовые поля и т.п.).

Теперь взгляните на интерфейс SearchListener. Он изображён также как обычный класс, только над его именем указано ключевое слово (стереотип) interface. Пунктирная линия с замкнутой стрелкой на конце означает, что класс MainPanel реализует интерфейс SearchListener, т.е. содержит все методы, объявленные в интерфейсе.

Теперь посмотрим на классы Thread, ResultsDialog и FileFinder. Все они соединены с классом MainPanel линиями, на одном конце которых находятся незамкнутые стрелки, а на другом – ромбики. Это обозначение можно расшифровать так: «MainPanel владеет объектами Thread, ResultsDialog и FileFinder«. Рассмотрим подробнее назначение этих классов.

FileFinder. С этим классом вы знакомы по предыдущим статьям. Он содержит методы, с помощью которых выполняется поиск файлов. Кроме того, этот класс «использует» интерфейс SearchListener, что отражено на диаграмме с помощью пунктирной линии с разомкнутой стрелкой. В нашем случае это означает, что объект типа FileFinder содержит указатели на объекты типа SearchListener, и может вызывать их методы.

ResultsDialog. Этот класс является потомком JDialog, и представляет собой диалоговое окно с текстовым полем для отображения результатов поиска.

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

Страница: 1 2 3 4 5