- •Вопросы по java
- •Базовые типы данных и литералы. Операторы. Классы-оболочки.Операторы управления.
- •М ассивы.
- •Статические методы и поля. Модификатор native. Модификатор synchronized. Логические блоки.
- •Параметризованные классы. Параметризованные методы. Методы с переменным числом параметров.
- •Наследование. Использование final.
- •Использование super и this.
- •Переопределение методов и полиморфизм. Полиморфизм и расширяемость.
- •Клонирование объектов. “Сборка мусора” и освобождение ресурсов.
- •Интерфейсы.
- •Статический импорт.
- •Внутренние (inner) классы. Вложенные (nested) классы. Анонимные (anonymous).
- •Класс String.
- •Классы StringBuilder и StringBuffer.
- •Регулярные выражения.
- •Интернационализация текста.
- •Иерархия и способы обработки. Оператор throw.Ключевое слово finally.
- •Собственные исключения. Наследование и исключения. Отладочный механизм assertion.
- •Класс File. Байтовые и символьные потоки ввода/вывода. Предопределенные потоки.
- •Класс Scanner.
- •Коллекции. Общие определения.
- •Списки.
- •Множества.
- •Карты отображений.
- •Управление приоритетами и группы потоков. Управление потоками. Потоки-демоны.
- •Методы synchronized. Инструкция synchronized.
- •Интерфейс ServletContext. Интерфейс ServletConfig
- •Интерфейсы ServletRequest и HttpServletRequest. Интерфейсы ServletResponse и HttpServletResponse.
- •Обработка запроса. Многопоточность.
- •Стандартные элементы action. Jsp-документ.
- •Технология взаимодействия jsp и сервлета.
-
Регулярные выражения.
P
attern
compile(String regex) – возвращает Pattern, который
со- ответствует regex. Matcher matcher(CharSequence
input) – возвращает Matcher, с помощью которого
можно находить соответствия в строке
input. boolean matches(String regex, CharSequence input) – про-
веряет на соответствие строки input шаблону
regex. String pattern() – возвращает строку,
соответствующую шаблону. String[]
split(CharSequence input) – разбивает строку input,
учитывая, что разделителем является
шаблон. String[] split(CharSequence input, int limit) –
разбивает строку input на не более чем
limit частей. С помощью метода matches()
класса Pattern можно проверять
на соот- ветствие шаблону целой строки,
но если необходимо найти соответствия
внутри строки, например, определять
участки, которые соответствуют шаблону,
то класс Pattern не может
быть использован. Для таких операций
необходимо использо- вать класс Matcher.
Начальное состояние объекта типа
Matcher не определено. Попытка
выз- вать какой-либо метод класса для
извлечения информации о найденном
соответ- ствии приведет к возникновению
ошибки IllegalStateException. Для
того чтобы начать работу с объектом
Matcher, нужно вызвать один
из его методов: boolean
matches() – проверяет,
соответствует ли вся строка шаблону;
boolean lookingAt()
– пытается найти последовательность
символов, начинающуюся с начала строки
и соответствующую шаблону; boolean
find() или boolean
find(int start)
– пытается найти по- следовательность
символов, соответствующих шаблону, в
любом месте строки. Параметр start
указывает на начальную позицию поиска.
Иногда необходимо сбросить состояние
Matcher’а в исходное, для
этого применяется метод reset()
или reset(CharSequence
input), который также
устанавливает новую последовательность
символов для поиска. Для замены всех
подпоследовательностей символов,
удовлетворяющих шаб- лону, на заданную
строку можно применить метод
replaceAll(String
replacement). Для того чтобы
ограничить поиск границами входной
последовательности, применяется метод
region(int start,
int end), а для
получения значе- ния этих границ –
regionEnd() и regionStart().
С регионами связано не- сколько методов:
Matcher useAnchoringBounds(boolean
b) – если установлен в
true, то начало и конец
региона соответствуют символам ^ и $
соответственно.
boolean hasAnchoringBounds() – проверяет закрепленность границ. В регулярном выражении для более удобной обработки входной после- довательности применяются группы, которые помогают выделить части найден- ной подпоследовательности. В шаблоне они обозначаются скобками “(“ и “)”. Номера групп начинаются с единицы. Нулевая группа совпадает со всей найден- ной подпоследовательностью. Далее приведены методы для извлечения информа- ции о группах. int end() – возвращает индекс последнего символа подпоследовательно- сти, удовлетворяющей шаблону; int end(int group) – возвращает индекс последнего символа указанной группы; String group() – возвращает всю подпоследовательность, удовлетворя- ющую шаблону; String group(int group) – возвращает конкретную группу; int groupCount() – возвращает количество групп; int start() – возвращает индекс первого символа подпоследовательно- сти, удовлетворяющей шаблону; int start(int group) – возвращает индекс первого символа указанной группы; boolean hitEnd() – возвращает истину, если был достигнут конец вход- ной последовательности.
