
- •Jdk и виртуальная машина java
- •Примитивные типы
- •Классы java. Понятие объекта.
- •Основные принципы ооп
- •Передача параметров по значению и по ссылке
- •Типы комментариев в java.
- •Модификаторы доступа
- •Наследование
- •Интерфейсы
- •Абстрактные классы
- •Константы
- •Работа со строками
- •Коллекции
- •Утилиты
- •Swing компоненты
- •Менеджер расположения
- •Система обработки событий
- •Потоки ввода и вывода
- •Сериализация
- •Обработка исключительных ситуаций
- •Вложенные классы
Константы
Константа — это именованная ячейка памяти, способная хранить данные, которые потом изменяться не будут.
Константа— это фактически переменная, объявленная с ключевым словом j (модификатором) final (оно как раз и говорит о том, что значение переменной изменяться не будет).
Тип enum — это тип, поля которого состоят из набора некоторых констант. Простой пример — стороны света, такой объект будет содержать 4 константы: NORTH, SOUTH, EAST, и WEST. Переменные объявлены большими буквами, потому что это константы.
Работа со строками
Для работы со строками в Java предусмотрен класс String. Помимо многочисленных конструкторов, позволяющих создавать строки из объектов других типов, в этом классе имеются различные методы, предназначенные для выполнения над строками самых нужных операций.
С помощью этих методов можно сливать строки и выделять подстроки, преобразовывать символы строки в строчные или прописные, выполнять поиск последовательностей символов в начале, конце или в произвольном месте строки и так далее. Есть также средства для сравнения строк.
Коллекции
Коллекции – это хранилища, поддерживающие различные способы накопления и упорядочения объектов с целью обеспечения возможностей эффективного доступа к ним. Они представляют собой реализацию абстрактных типов (структур) данных, поддерживающих три основные операции:
· добавление нового элемента в коллекцию;
· удаление элемента из коллекции;
· изменение элемента в коллекции.
В качестве других операций могут быть реализованы следующие: просмотреть элементы, подсчитать их количество и др.
Применение коллекций обусловливается возросшими объемами обрабатываемой информации. Когда счет используемых объектов идет на сотни тысяч, массивы не обеспечивают ни должной скорости, ни экономии ресурсов.
Утилиты
Это java.util.*
- получение случайных чисел – класс Random
для получения псевдослучайного числа можно вызывать методы:
nextInt()
nextInt(int n)
nextDouble()
nextFloat()
nextBoolean()
- работа с датой и временем.
Методы работы с датами и показаниями времени собраны в:
*Date
*Calendar
Date – хранит число милисекунд, прошедших с 1 января 1970г. 00:00:00 по Гринвичу
Date – позволяет сравнить два момента времени функциями:
before
after
Формат хранения long
Методы: getTime()
setTime()
Интерпритацией значений, записанных в Date служит класс Calendar. Он позволяет установить местные особенности (часовой пояс, традиции)
Calendar getInstance()
Calendar – абстрактный в нем собраны общие св-ва календарей: юлианского, григорианского, лунного.
Его реализация – GregorianCalendar
Получить значение из GC можно get(int field), установить set(int field)
- Представление даты и времени
Можно осуществить методами класса DateFormat и его реализацией SimpleDateForm
Awt и sving
Исходное назначение AWT – предоставить набор графических компонентов, который вобрал бы в себя наиболее характерные черты современных элементов управления и позволил бы однократно создавать пользовательские интерфейсы, подходящие для любой платформы. Одним из самых необычных свойств AWT стала способность контейнеров располагать компоненты по определенному алгоритму, определяемому менеджером расположения.
Однако неплохая на первый взгляд идея AWT провалилась. Этому способствовало множество причин. Ниже перечислены только некоторые из них.
1. Чрезвычайно плохо была реализована схема обработки событий, создатели AWT не смогли придумать ничего лучшего, как сообщать обо всех событиях в метод handleEvent() из базового класса Component, и чтобы обработать эти события, приходилось наследовать от класса компонента и использовать огромный оператор switch, распределяя их по обработчикам.
2. Достигнув одного – легкой переносимости AWT на любые платформы, разработчики упустили из виду другое – крайне скудные возможности таких компонентов.
3. отсутствие в AWT четкого механизма, позволяющего программистам создавать собственные компоненты и использовать их в средах визуального построения графического пользовательского интерфейса (Graphical User Interface).
4. Множество неудобств доставляла также низкая скорость выполнения программ, написанных с помощью AWT, особенно программ, использующих графику и анимацию.
В AWT у каждого компонента была связь с операционной системой, на которой работало ваше приложение.
В версиях java после 1.1 появились легковесные компоненты. Итак, легковесный компонент – это просто область в пространстве экрана, занимаемом вашим Java-приложением. Главные его атрибуты – это координаты в окне и размер. Для операционной системы легковесный компонент вообще не существует, потому что представляет собой всего лишь часть какого-то окна. Всю работу по поддержке легковесных компонентов взяли на себя библиотека AWT и виртуальная машина Java.
Все компоненты AWT имеют своих наследников в Swing, и имена классов этих компонентов отличаются лишь префиксом «J». Эффективная прорисовка компонентов Swing на экране – одна из самых важных обязанностей класса JComponent, и выполняет он ее очень качественно. Включив в базовый класс Swing двойную буферизацию, разработчики библиотеки избавили эту библиотеку от проблем AWT, связанных с мерцанием и медленной скоростью вывода на экран.
Подводя маленький итог, мы можем сказать, что, хотя Swing и основана на AWT, разница между двумя этими библиотеками велика.