
- •Классификация современных мп.
- •Организация мп систем
- •Організація однокристального мікроконтролера мсs-51. Типи пам'яті. Карта пам'яті. Режими адресації. Особливості системи команд: команди пересилання.
- •Команды пересылки данных.
- •Регістрова структура мікроконтролера мс5-51. Особливості системи команд: арифметичні команди, логічні команди, бітові операції, команди передачі керування.
- •Блок регистров специальных функций(sfr)
- •Однокристальний мікро контролер mcs-51: порти вводу-виводу, система переривань. Службові регістри переривань, процедура обробки переривань.
- •Регистр приоритетов прерываний (ip)
- •Однокристальний мікро контролер mcs-51: система таймерів-лічильників. Структура таймерів-лічильників. Службові регістри. Режими роботи. Приклад обробки переривань від таймера 0.
- •2.7 Платформа java. Створення та виконання програм. Принципи об’єктно-орієнтованого підходу. Інкапсуляція. Композиція. Наслідування. Поліморфізм.
- •Платформа java. Типи даних. Організація пам’яті. Структура класів. Статичні елементи. Конструктори. Абстрактні класи та інтерфейси. Внутрішні класи. Все является объектом
- •Примитивные типы (примитивы)
- •Создание новых типов данных
- •Поля и методы
- •Методы, аргументы и возвращаемые значения
- •Ключевое слово static
- •Статические методы
- •Конструктор гарантирует инициализацию
- •Класс Class
- •Абстрактные классы и методы
- •Интерфейсы
- •Внутренние классы Вложенные классы (Inner)
- •Классы, вложенные в методы (локальные внутренние классы)
- •Анонимные внутренние классы
- •Статические внутренние классы (nested)
- •Компоненты и контейнеры
- •Диспетчеры компоновки
- •Обработка событий
- •Платформа java: потоки вводу-виводу, Класифікація потоків. Класи-фільтри. Байтові та текствові потоки. Потоки ввода/вывода и файлы
- •Классификация классов ввода-вывода
- •Потоки фильтров
- •Текстовые потоки
Классы, вложенные в методы (локальные внутренние классы)
Доступен только внутри метода.
Имеет доступ к параметрам и локальным переменным этого метода, но они должны быть final. Т.к. время жизни объекта лок. внутр. класса может превышать время жизни локальных переменных, то он получает их копии и они не должны после этого меняться.
Анонимные внутренние классы
Если нужно создать один-единственный объект некоторого класса, то этому классу можно не присваивать имени.
Пусть у нас есть класс А. Надо создать класс В порожденный от А.
Обычный способ:
class B extends A {…}
…
A a = new B();
С анонимным внутренним классом:
A a = new A() {//определ. класса, который наследует класс А опис. поля и
//методы. Конструктор базового класса-по умолчанию
};// обязательно ;(точка с запятой)
Статические внутренние классы (nested)
В объекте обычно внутреннего класса есть ссылка на объект внешнего класса.
Поэтому мы создаем: obj.newInner();
У статического такой ссылки нет.
Поэтому:
- для его создания не нужен объект внешнего класса.
- из объекта статического внутреннего класса нельзя обращаться к нестатическим членам внешнего (а только к статическим).
- у нестатических внешних классов не может быть статических членов. У статических – могут.
2.9 Платформа JAVA; організація графічного інтерфейсу користувача. Компоненти і контейнери, Диспетчери компонування. Механізми обробки подій.
Графический интерфейс пользователя (ГИП)(GUI)
Библиотека классов AWT (Abstract Window Toolkit). Основана на родных графических компонентах каждой ОС. (Peer – пиры – зависящие от платформы эквиваленты компонентам Java). Компоненты, основанные на peer – интерфейсах – тяжеловесные, тяжелые (heavy). Написаны на С++. Выглядит по разному в разных ОС.
Потом добавили компоненты, написанные на Java – легкие, легковесные (Lightweight). Выглядят везде одинаково. Сохраняют вид и поведение (Look and Feel) в любых ОС.
Библиотека
Swing – начиная с JAVA
1.2 (JAVA 2).Основана на легких
компонентах. Они могут менять вид
(pluggable Look
and Feel)
plaf. Фирменный вид –
”Metal” (“приборный cтиль”,
Java L&F).
Swing + AWT+Java 2D+…=JFC (Java Fundation Classes) библиотека графических средств JAVA.
Компоненты и контейнеры
Компонент – элемент графического интерфейса, который можно использовать независимо от других: кнопка, строка меню, текстовое поле, полоса прокрутки, переключатель.
Контейнер – компонент, который предназначен для хранения других элементов.
Компонент должен обязательно помещен в контейнер (он знает как их рисовать). (Бывает невидимым). Поэтому компонент должен быть помещен в контейнер. Контейнер – тоже компонент, поэтому может содержать другие контейнеры (иерархия контейнеров). В верхней части иерархии – контейнер верхнего уровня. Он не входит в другой контейнер.
1. Контейнеры верхнего уровня Swing-тяжелые.
Любая иерархия начинается с них.
2. Легкие контейнеры – наследники JComponent: JPanel, JScrollPane, JRootPane. Они могут содержаться внутри другого контейнера (для создания групп связанных компонентов и помещения их внутрь внешнего контейнера).
3. Легкие компоненты Swing- производятся от JComponent (кроме контейнеров верхнего уровня). Swing – лежит в пакете javax.swing, классы начинаются с буквы J:
JButton, JList, JCheck, JFrame, JLabel, JTextArea, JTextField, JMenu, JTree, JTable.Построены по архитектуре MVC – Mode l-View-Control
V и C объединены вместе и называются-делегат . Model (хранит состояние объекта) – UI Delegate (отвечает за внешний вид). Это архитектура разделеной модели (модель-делегат).
Окно верхнего уровня – фрейм.
В AWT – Frame;
В Swing – JFrame.
Строка заголовка и пиктограммы размеров окна отображаются ОС. Внутренность окна – библиотекой Swing. Варианты:
- метод main () может быть внутри класса JFrame. (нежелательно).
- все, кроме создания фрейма ( new SimpleFrame () ) может быть в конструкторе (нежелательно).
- может использоваться не наследование, а композиция: