Шта је метода финализе() у Јави и како је заменити

Sta Je Metoda Finalize U Javi I Kako Je Zameniti



Јава пружа програмеру одличну функционалност за ефикасно управљање системским ресурсима. У таквом сценарију, „ финализе() ” ступа на снагу метода која ослобађа системске ресурсе пре него што се сакупљач смећа изврши за одређени објекат. „Јава виртуелна машина (ЈВМ)“, међутим, дозвољава позивање методе „финализе()“ једном по објекту.

На овом блогу ће се расправљати о коришћењу и превазилажењу методе „финализе()“.







Шта је Јава „финализе()” метод и како га заменити?

финализе() „метод „ Објекат ” класу „Гарбаге Цоллецтор” позива непосредно пре брисања објекта који је погодан за сакупљање смећа да би се применио задатак чишћења.



Синтакса



заштићена празнина финализовати ( ) баца Тхровабле





У овој синтакси, „ заштићени ” је спецификација приступа који имплицира да се овом методу може приступити само унутар класе и изведених класа те класе.

Пример 1: Примена методе „финализе()“ у Јави



Овај пример илуструје коришћење методе „финализе()“:

јавни час Финализе2 {
заштићена празнина финализовати ( ) {
Систем.оут.принтлн ( 'Ово је метода финализације!' ) ;
}
јавна статична празнина главна ( Низ [ ] аргс ) {
Финализе2 објекат = нови Финализе2 ( ) ;
објекат = нулл;
Систем.гц ( ) ;
Систем.оут.принтлн ( „Позван је сакупљач смећа!“ ) ;
} }

У горњим редовима кода:

  • Примените „ финализе() ” у оквиру класе „Финализе2” која садржи наведени исказ.
  • у „ главни ”, креирајте објекат класе преко „Финализе2()” конструктора.
  • Сада доделите објекту „ нула ” вредност. Такав је да када има „нулту“ вредност, нема референце и тако је погодан за сакупљање смећа.
  • Након тога примените „ Систем.гц () ” за извршавање сакупљача смећа, чиме се позива метода „финализе()”.

Излаз

Овде се може проверити да ли је метод „финализе()” позван на одговарајући начин.

Пример 2: Заобилажење Јава методе „финализе()“.

Објекат ” класа одговара родитељској класи свих Јава класа. Метода “финализе()” присутна у овој класи нема никакву имплементацију. Међутим, у дефиницији класе, активности чишћења су ту. Према томе, поништавање ове методе резултира обављањем дефинисаних активности чишћења:

јавни час Финализе {
заштићена празнина финализовати ( ) баца Тхровабле {
покушати {
Систем.оут.принтлн ( „Метод класе финализе()“ ) ;
}
улов ( Бацање осим ) {
баци осим;
}
коначно {
Систем.оут.принтлн ( „Позивање методе финализе() класе Објецт“ ) ;
супер.финализовати ( ) ;
} }
јавна статична празнина главна ( Низ [ ] аргс ) баца Тхровабле {
Финализе обј = нев Финализе ( ) ;
обј.финализе ( ) ;
} }

Према горњем блоку кода:

  • Наведите „ финализе() ” метод и прогласити „ Тхровабле ” изузетак, респективно.
  • У „ покушати ” блок, наведите наведену изјаву и носите се са изузетком у „ улов ' блокирати.
  • У „ коначно “ блок, “ супер ” кључна реч указује на метод „финализе()” класе објеката. Примењује се у овом специфичном блоку да би се обезбедило извршење методе „финализе()“ чак и ако се суочи са изузетком.
  • у „ главни “, креирајте објекат класе и надјачајте метод “финализе()” класе објекта методом специфицираном/дефинисаном у класи “Финализе”.

Излаз

У овом исходу, може се приметити да је метода „финализе()“ успешно надјачана.

Закључак

финализе() ” метод се позива од „Гарбаге Цоллецтор” пре брисања објекта и може се заменити коришћењем „ супер ” кључна реч. Овај блог је расправљао о коришћењу и превазилажењу методе „финализе()“ у Јави.