Мова програмування Java: з чого почати вивчення. Де застосовується Java

Збирач сміття

У самовчителі “Мова програмування Java для новачків” розділ автоматичного збирача сміття є найбільш цікавим.

В Java, на відміну від мови “Сі”, неможливо ручне видалення об’єкта з пам’яті. Для цього реалізовано метод автоматичного видалення – збирач сміття. При традиційному видаленні через null відбувається лише усунення посилання на об’єкт, а сам об’єкт видаляється. Існують методи примусової сміття, хоча вони не рекомендовані для використання у звичайній роботі.

Модуль автоматичного видалення невикористовуваних об’єктів працює у фоновому режимі запускається при простої програми. Для очищення об’єктів з пам’яті програма зупиняється, після звільнення пам’яті прерваная операція поновлюється.

Модифікатори

Розрізняють різні типи модифікаторів. Крім тих, які визначають спосіб доступу, існує модифікатори методів, змінних, класу. Методи, оголошені як private, доступні тільки в оголошеному класі. Такі змінні не можуть використовуватися в інших класах та функції. Public відкриває доступ для будь-якого класу. Якщо потрібно отримати Public class з іншого пакета, то його слід попередньо імпортувати.

Модифікатор protected схожий на дію на public – відкриває доступ до полів класу. В обох випадках змінні можуть використовуватися в інших класах. Але паблік-модифікатор доступний абсолютно для всіх, а протектед-модифікатор – тільки для успадкованих класів.

Цікаве:  Як почистити реєстр на компютері?

Модифікатор, який застосовується при створенні методів, – static. Це означає, що створений метод існує незалежно від екземплярів класу. Модифікатор Final не управляє доступом, а вказує на неможливість подальшого маніпулювання значеннями об’єкта. Він забороняє зміну того елемента, для якого вказано.

Final для полів унеможливлює зміну першого значення змінної:

  • public static void mthod(String[] args) {

    final int Name = 1;

    int Name = 2;// видасть помилку

    }

Змінні з модифікатором final є константами. Їх прийнято писати великими літерами. CamelStyle та інші способи не працюють.

Final для методів вказує заборона на зміну методу в успадкованому класі:

  • final void myMethod() {

    System.out.printIn(“Hello world”);

    }

Final для класів означає, що не можна створити спадкоємців класу:

  • final public class Class {

    }

Abstract – модифікатор створення абстрактних класів. Будь-абстрактний клас і абстрактні методи призначені для подальшого розширення в інших класах і блоках. Модифікатор transient вказує віртуальній машині не обробляти задану змінну. У цьому випадку та просто не збережеться. Наприклад, transient int Name = 100 не збережеться, а int b збережеться.