 
        
        - •Основні типи даних(char,short.Int і т.Д.), синтаксис використання й обмеження. Способи й методи перетворення одного типу в іншій.
- •Типы данных в java
- •Примитивные типы данных
- •Java преобразование строки в число (string to number)
- •Java преобразование числа в строку (number to string)
- •Преобразования чисел
- •Типова структура тіла класу. Особливості настроювання операційного середовища для запуску java-програм,псевдо-компіляція та запуск за допомогою утиліт командного рядка.
- •Керуючі конструкції, особливості синтаксису й використання. Локальні змінні й області їхньої видимості.
- •Досрочный выход из цикла (оператор break)
- •Внутрішні класи, анонімні класи- властивості й мета застосування , особливості синтаксису . Класи- адаптери.
- •5. Посилальні й прості типи даних,приклади й особливості використання
- •Клас String-основні методи класу й особливості застосування.
- •Клас Arrays-основні методи класу й особливості застосування.
- •8. Масиви
- •9.Абстрактные классы
- •10.Интерфейсы java.
- •11.Конструктори- призначення, синтаксис й особливості застосування при спадкуванні.
- •12. Коллекции Java (Java Collections Framework)
- •14. События
- •15. Сигнатура методу, перевантаження й перевизначення методів. Особливості використання фінализації різних елементів класу
- •Перегрузка (overload)
- •Класс final
- •Метод final
- •Переменная final
- •Основні класи організації графічного користувальницького інтерфейсу (кнопки, меню, текстові поля й т.Д.) Короткий опис методів використання.
- •19. Виключення, класифікація, основні конструкції , методи обробки виняткових ситуацій
- •21 Спадкування класів й інтерфейсів. Особливості й синтаксис.
- •24.Аплети – можливості та обмеження, особливості життєвого циклу та використання
- •25. Перерахування(перечисления). Синтаксис, структура, основні методи та приклади використання
- •Метод values()
- •Метод valueOf(String string)
- •26. Модифікатори доступу. Ікапсюляція.
- •27.Типи відносин між різними посилальними типами(спадкування , реалізація, агрегація). Синтаксис цих відносин.
- •28. Файлові потоки вводу-виводу. Основні класи , особливості використання.
- •29. Обобщения (Generic)
29. Обобщения (Generic)
Java поддерживает обобщения. Обобщенными бывают классы, методы и интерфейсы. Обобщения нужны для того, чтобы предоставить реализацию не зависящую от типов данных. Например, обобщенный класс может предоставлять обработку разнотипных данных. Обобщения работают только с объектами. Аналогия обобщений в С++ - шаблоны.
Особености:
- Обобщения принимают только ссылочные типы. Что бы использовать примитивные типы в обобщениях существуют оберточные классы. 
- <T extends D> означает что в данов обобщении мы сможем использовать только объекты класса производного от класса D. 
- Создавать объект параметризованого типа нельзя. 
пример с обобщением.
class Gen<T> {
T ob; // объявление объекта типа T
// Передать конструктору ссылку на объект типа T
Gen(T o) {
ob = o;
}
// Вернуть ob
T getob() {
return ob;
}
// Показать тип T
void showType() {
System.out.println("Тип T: " + ob.getClass().getName());
}
}
// Код для кнопки
// Работаем с обобщённым классом
// Создаём Gen-ссылку для Integer
Gen<Integer> iOb;
// Создаём объект Gen<Integer>
iOb = new Gen<Integer>(77);
// Показать тип данных, используемый iOb
iOb.showType();
// Получить значение iOb
int value = iOb.getob();
System.out.println("Значение " + value);
// Создадим объект Gen для String
Gen<String> strOb = new Gen<String>("Обобщённый текст");
// Показать тип данных, используемый strOb
strOb.showType();
// Получить значение strOb
String str = strOb.getob();
System.out.println("Значение: " + str);
РАЗБОР КОДА
class Gen<T> {
}
В угловых скобках используется T - имя параметра типа. Это имя используется в качестве заполнителя, куда будет подставлено имя реального типа, переданного классу Gen при создании реальных типов. Угловые скобки указывают, что параметр может быть обобщён. Сам класс при этом называется обобщённым классом или параметризованным типом.
T ob; // объявляет объект типа T
Вместо T подставится реальный тип, который будет указан при создании объекта класса Gen. Объект ob будет объектом типа, переданного в параметре типа T. Если в параметре T передать тип String, то экземпляр ob будет иметь тип String.
конструктор Gen().
Get(T o) {
ob = o;
}
Параметр o имеет тип T. Это значит, что реальный тип параметра o определяется типом, переданным параметром типа T при создании объекта класса Gen.
Параметр типа T также может быть использован для указания типа возвращаемого значения метода:
T getob() {
return ob;
}
Как использовать обобщённый класс. Можно создать версию класса Gen для целых чисел:
Gen<Integer> iOb;
В угловых скобках указан тип Integer, т.е. это аргумент типа, который передаётся в параметре типа T класса Gen. Фактически мы создаём версию класса Gen, в которой все ссылки на тип T становятся ссылками на тип Integer.
Когда мы присваиваем ссылку на экземпляр, то угловые скобки также требуется указывать.
iOb = new Gen<Integer>(new Integer(88));
