Sobes.tech
Junior — Middle

Чӣ гуна одатан анҷоми объектҳо дар Java иҷро мешавад?

sobes.tech AI

Ҷавоб аз AI

Дар Java, барои идора кардани анҷоми кор бо объектҳо одатан методи finalize() истифода мешавад, ки аз ҷониби ҷамъкунандаи партовҳо пеш аз нест кардани объект даъват мешавад. Аммо аз Java 9, ин метод ҳамчун кӯҳна ҳисобида мешавад ва истифодаи он тавсия намеёбад, зеро вақти даъват карданаш номуайян аст ва бо иҷроиш мушкилот дорад.

Равиши муосир истифодаи интерфейси AutoCloseable ва сохтори try-with-resources барои озод кардани равандҳои мансуб мебошад:

class Resource implements AutoCloseable {
    public void close() {
        // озод кардани мансуб
        System.out.println("Манбъ баста шуд");
    }
}

try (Resource res = new Resource()) {
    // кор бо манбъ
}
// дар ин ҷо res.close() автоматӣ даъват мешавад

Бинобар ин, анҷоми кор бо объектҳо, махсусан онҳое, ки манбаъҳоро идора мекунанд, тавассути бастаҳои ошкоро амалӣ мешавад, на тавассути finalize().