Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

जावा 9 में Cleaner क्लास का उपयोग क्या है?

प्रोग्राम निष्पादन के दौरान बनाया गया एक ऑब्जेक्ट गार्बेज कलेक्टर (GC) द्वारा स्वचालित रूप से हटा दिया जाता है। जब कोई ऑब्जेक्ट किसी थ्रेड द्वारा रेफरेंस नहीं किया जाता और जब JVM निर्धारित करता है कि इस ऑब्जेक्ट तक पहुंचा नहीं जा सकता, तो यह गार्बेज कलेक्शन के लिए पात्र हो जाता है।

Object क्लास में एक finalize() मेथड होता है, जिसे GC द्वारा हीप से ऑब्जेक्ट को हटाने का प्रयास करने से पहले स्वचालित रूप से कॉल किया जाता है। जावा 9 में, finalize() मेथड को डिप्रिकेट कर दिया गया है और गार्बेज कलेक्शन प्रबंधन के लिए एक नई क्लास java.lang.ref.Cleaner जोड़ी गई है। Cleaner क्लास का एक ऑब्जेक्ट स्वचालित रूप से सूचित हो जाता है जब कोई ऑब्जेक्ट गार्बेज कलेक्शन के लिए पात्र हो जाता है। जिस ऑब्जेक्ट को गार्बेज कलेक्ट किया जा रहा है, उसे register() मेथड का उपयोग करके क्लीनर ऑब्जेक्ट के साथ पंजीकृत करने की आवश्यकता होती है।

उदाहरण

import java.lang.ref.Cleaner;

public class CleanerTest {
    public static void main(String args[]) {
        System.out.println("TutorialsPoint");
        Cleaner cleaner = Cleaner.create();
        if(true) {
            CleanerTest myObject = new CleanerTest();
            cleaner.register(myObject, new State());
            // register cleaner
        }
        for(int i = 1; i <= 10000; i++) {
            String[] largeObject = new String[1000];
            try {
                Thread.sleep(1);
            } catch(InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
    private static class State implements Runnable {
        public void run() {
            System.out.print("Cleaning action");
        }
    }
}

आउटपुट

TutorialsPoint Cleaning action
  1. Java में JViewport क्लास का महत्व क्या है? Java में JViewport क्लास का महत्व क्या है?

    JViewport एक JViewport क्लास मूल स्क्रॉलिंग मॉडल को परिभाषित करती है और इसे तार्किक स्क्रॉलिंग और पिक्सेल-आधारित स्क्रॉलिंग दोनों का समर्थन करने के लिए डिज़ाइन किया गया है। व्यूपोर्ट का चाइल्ड जिसे व्यू कहा जाता है, JViewport.setViewPosition() विधि को कॉल करके स्क्रॉल किया जाता है। एक JViewport क्

  1. Java में setBounds() विधि का उपयोग क्या है? Java में setBounds() विधि का उपयोग क्या है?

    लेआउट प्रबंधक जोड़े गए घटकों की स्थिति और आकार को स्वचालित रूप से तय करने के लिए उपयोग किए जाते हैं। लेआउट प्रबंधक की अनुपस्थिति में, घटकों की स्थिति और आकार को मैन्युअल रूप से सेट करना पड़ता है। ऐसी स्थिति में setBounds() विधि का उपयोग स्थिति और आकार सेट करने के लिए किया जाता है। घटकों की स्थिति औ

  1. Java में Container क्लास का महत्व क्या है? Java में Container क्लास का महत्व क्या है?

    Container एक Container क्लास को एक विशेष घटक के रूप में वर्णित किया जा सकता है जो घटकों के संग्रह को धारण कर सकता है। दो प्रकार के स्विंग कंटेनर हैं, वे हैं टॉप-लेवल कंटेनर और लो-लेवल कंटेनर। टॉप-लेवल कंटेनर हैवीवेट कंटेनर हैं जैसे JFrame, JApplet, JWindow, और JDialog। लो-लेवल कंटेनर लाइटवेट कंटेन