 
        
        - •Основні типи даних(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)
21 Спадкування класів й інтерфейсів. Особливості й синтаксис.
Для того чтобы произвести наследование необходимо после названия класса, перед фигурной скобкой, которая открывает тело класса, прописать служебное слово extends и за ним название базового класса. При этом дочерний класс может унаследовать только один базовый класс. Пример:
class BaseClass {
private String msg = "Test message";
public String getMessage() {
returnmsg;
}
public void setMessage(String str) {
msg += str;
}
}
public class ChildrenClass extends BaseClass {
public static void main( String[] args )
{
ChildrenClass cc = new ChildrenClass();
cc.setMessage(" children class.");
System.out.println(cc.getMessage() );
}
}
наследуются все методы, свойства базового класса, однако дочерний класс не может обращаться к элементам объявленным как private.
Переопределение метода
Так же в Java есть возможность переопределять методы базовых классов, при условии, что они не имеют модификатора final,который запрещает переопределение метода. Если модификатор final стоит перед названием класса, то данный класс не может наследоваться.
И так, в дочернем классе можно переопределять реализацию методов базового класса. Это позволяет писать довольно гибкий код. Пример:
class BaseClass {
private static final String MESSAGE = "Test message";
private static String msg;
public String getMessage() {
return msg;
}
public void setMessage(String str) {
msg = MESSAGE + str;
}
public void setNewMessage(String str) {
setMessage(": "+ str);
}
}
public class ChildrenClass extends BaseClass {
// переопределение базового класса
public void setNewMessage(String str) {
setMessage(" - " + str);
}
public static void main( String[] args ) {
ChildrenClass cc = new ChildrenClass();
cc.setMessage(" children class.");
System.out.println( cc.getMessage() );
// вызывается переопределенный метод базового класса
cc.setNewMessage(" children new method.");
System.out.println(cc.getMessage());
// вызывается метод базового класса
BaseClass bc = new BaseClass();
bc.setNewMessage(" base new method.");
System.out.println(cc.getMessage());
}
}
Инициализация классов
При наследовании сначала происходит инициализация базового класса, а уж потом дочернего. Если в иерархии наследования участвует более двух классов, то инициализация начинается от самого базового класса, к самому дочернему. Java автоматически вставляет вызов конструктора базового класса в конструктор дочернего класса. Давайте рассмотрим пример:
class One {
One() {
System.out.println("Construct One.");
}
}
class Two extends One {
Two() {
System.out.println("Construct Two.");
}
}
public class Three extends Two {
public Three() {
System.out.println("Construct Three");
}
public static void main( String[] args ) {
Three three = new Three();
}
}
Ключевое слово super() должно быть первой командой в конструкторе дочернего класса.
Это вызвано тем, что Java автоматически, конструкторы с аргументами, не создает. Если вы не вызовите конструктор базового класса, с передачей ему аргументов, компилятор вернет ошибку.
class One {
One( String str ) {
System.out.println("Construct One. Argument: " + str);
}
}
class Two extends One {
Two( String str ) {
super( str );
System.out.println("Construct Two. Argument: " + str);
}
}
public class Three extends Two {
public Three( String str ) {
super( str );
System.out.println("Construct Three. Argument: " + str);
}
public static void main( String[] args ) {
Three three = new Three("running");
}
}
 
 
