Материал: Java. Лабораторная работа 8

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рисунок 9 — Ошибка выхода за пределы первого индекса

Рисунок 10 — Ошибка выхода за пределы второго индекса Все векторы можно сохранить, нажав на «Сохранить...» (рис. 11).

Рисунок 11 — Окно сохранения файла Если файл уже существует, то появится вопрос о перезаписи (рис. 12).

Рисунок 12 — Вопрос о перезаписи После сохранения данных удалим все векторы из списка, нажав на

кнопку «Удалить все векторы». И воспользуемся кнопкой «Открыть...».

11

Рисунок 13 — Окно открытия файла После открытия файла увидим следующий результат (рис. 14).

Рисунок 14 — Результат открытия файла Если попробуем снова открыть файл, то появится вопрос о

предварительной очистке списка векторов (рис. 15).

Рисунок 15 — Вопрос о предварительной очистке списка векторов Можно не очищать — тогда данные добавятся в конец.

12

При открытии/сохранении файла может возникнуть ошибка совместимости периферии (рис. 16).

Рисунок 16 — Ошибка совместимости периферии HeadlessException — это исключение (ошибка), которая возникает,

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

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

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

1. Создать файл appletviewer.policy в рабочей директории со следующим содержанием (табл. 2).

Таблица 2 — Код appletviewer.policy

grant {

permission java.security.AllPermission;

permission java.net.SocketPermission "*", "accept, connect, listen, resolve";

};

2. Перекомпилировать (на всякий случай):

javac Task8.java

3. Запустить со следующими опциями:

java -Djava.security.policy=appletviewer.policy sun.applet.AppletViewer file:Task8.java

Заключение В результате выполнения лабораторной работы мы ознакомились с

базовыми принципами создания апплетов, технологией Swing и обработкой событий.

13