Java руководство для начинающих - Шилдт Герберт (2012)
-
Год:2012
-
Название:Java руководство для начинающих
-
Автор:
-
Жанр:
-
Оригинал:Английский
-
Язык:Русский
-
Издательство:Вильямс
-
Страниц:316
-
ISBN:978-5-8459-1770-6
-
Рейтинг:
-
Ваша оценка:
Java руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги
void put(char ch) throws QueueFullException;
// извлечь символ из очереди
char get() throws QueueEmptyException;
}
Скомпилируйте сначала новую версию исходного файла IQChar. j ava, а затем исходный файл QExcDemo. java и запустите программу QExcDemo на выполнение. В итоге вы получите следующий результат ее выполнения:
Attempting to store A - OK
Attempting to store В - OK
Attempting to store С - OK
Attempting to store D - OK
Attempting to store E - OK
Attempting to store F - OK
Attempting to store G - OK
Attempting to store H - OK
Attempting to store I - OK
Attempting to store J - OK
Attempting to store К
Queue is full. Maximum size is 10
Getting next char: A
Getting next char: В
Getting next char: С
Getting next char: D
Getting next char: E
Getting next char: F
Getting next char: G
Getting next char: H
Getting next char: I
Getting next char: J
Getting next char:
Queue is empty.
Упражнение для самопроверки по материалу главы 9
Какой класс находится на вершине иерархии исключений?
Объясните вкратце, как пользоваться ключевыми словами try и catch?
Какая ошибка допущена в приведенном ниже фрагменте кода?// ...
vals[18] = 10;
catch (ArraylndexOutOfBoundsException exc) {
// обработать ошибку
}
Что произойдет, если исключение не будет перехвачено?
Какая ошибка допущена в приведенном ниже фрагменте кода?class A extends Exception { ...
class В extends А { ...
// ...
try {
// ...
}
catch (A exc) { ... }
catch (В exc) { ... }
Может ли внутренний блок catch повторно генерировать исключение, которое будет обработано во внешнем блоке catch?
Блок finally — последний фрагмент кода, выполняемый перед завершением программы. Верно или неверно? Обоснуйте свой ответ.
Исключения какого типа необходимо явно объявлять с помощью оператора throws, включаемого в объявление метода?
Какая ошибка допущена в приведенном ниже фрагменте кода?class MyClass { // ... }
// ...
throw new MyClass ();
Отвечая на вопрос 3 упражнения для самопроверки по материалу главы 6, вы создали класс Stack. Добавьте в него специальные исключения для реагирования на попытку поместить элемент в переполненный стек и извлечь элемент из пустого стека.
Какими тремя способами можно сгенерировать исключение?
Назовите два подкласса, производных непосредственно от класса Throwable.
Что такое многократный перехват?
Следует ли перехватывать в программе исключения типа Error?
Глава 10
Ввод-вывод данных
Основные навыки и понятия
Представление о потоках ввода-вывода
Отличия байтовых и символьных потоков
Классы для поддержки байтовых потоков
Классы для поддержки символьных потоков
Представление о встроенных потоках
Применение байтовых потоков
Использование байтовых потоков для файлового ввода-вывода
Автоматическое закрытие файлов с помощью оператора try с ресурсами
Чтение и запись двоичных данных
Манипулирование файлами с произвольным доступом
Применение символьных потоков
Использование символьных потоков для файлового ввода-вывода
Применение оболочек типов Java для преобразования символьных строк в числа
В примерах программ, приводившихся в предыдущих главах, уже применялись отдельные части системы ввода-вывода в Java, в частности метод println (), но делалось это без каких-либо формальных пояснений. Система ввода-вывода основана в Java на иерархии классов, поэтому ее функции и особенности нельзя было представлять до тех пор, пока не были рассмотрены классы, наследование и исключения. А теперь настал черед и для средств ввода-вывода.