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

जावा में रिफ्लेक्शन का उपयोग करके स्टैटिक इनर क्लास को कैसे इंस्टेंटिएट करें?


स्टैटिक इनर क्लास को आउटर क्लास के इंस्टेंस की आवश्यकता के बिना इंस्टेंटिएट किया जा सकता है। सामान्यतः, एक इनर क्लास नेस्टेड क्लास का एक हिस्सा होती है, जिसे जावा में नॉन-स्टैटिक नेस्टेड क्लासेस कहा जाता है। इनर क्लास के प्रकार हैं मेंबर इनर क्लास, अनाम इनर क्लास, और लोकल इनर क्लास।

हम InnerClass.class.newInstance() का उपयोग करके रिफ्लेक्शन के साथ स्टैटिक इनर क्लास को इंस्टेंटिएट कर सकते हैं। यदि हमें नॉन-स्टैटिक इनर क्लास को इंस्टेंटिएट करने के लिए आउटर क्लास के इंस्टेंस की आवश्यकता है, तो हम इसे new ऑपरेटर से पहले निर्दिष्ट कर सकते हैं।

उदाहरण

import java.lang.reflect.*; 
public class InnerclassWithReflectionTest { 
    public static void main(String args[]) { 
        try { 
            InnerClass inner = (InnerClass) InnerClass.class.newInstance(); 
            inner.test(); 
        } catch(Exception e) { 
            e.printStackTrace(); 
        } 
    }  
    // इनर क्लास 
    static class InnerClass { 
        public void test() { 
            System.out.println("TutorialsPoint में आपका स्वागत है !!!"); 
        } 
    } 
}

आउटपुट

TutorialsPoint में आपका स्वागत है !!!

  1. - Java में मेंबर इनर क्लास को कैसे इंस्टेंशिएट करें?

    एक क्लास जो एक क्लास के अंदर घोषित की जाती है लेकिन मेथड के बाहर होती है, उसे मेंबर इनर क्लास के रूप में जाना जाता है। हम मेंबर इनर क्लास को दो तरीकों से इंस्टेंशिएट कर सकते हैं: क्लास के भीतर इनवोक किया गया क्लास के बाहर इनवोक किया गया इनर क्लास के नियम आउटर क्लास (वह क्लास जिसमें इनर क्लास ह

  1. - Java में एनोनिमस इनर क्लास का उपयोग करके इंटरफेस कैसे इम्प्लीमेंट करें?

    एक एनोनिमस इनर क्लास एक ऐसी क्लास है जिसका कोई नाम नहीं होता, हम इसे सीधे इंस्टेंशिएशन लाइन पर परिभाषित करते हैं। उदाहरण निम्न प्रोग्राम में, हम TutorialsPoint इंटरफेस के toString() मेथड को एनोनिमस इनर क्लास का उपयोग करके इम्प्लीमेंट कर रहे हैं, और इसके रिटर्न मान को प्रिंट कर रहे हैं। interface

  1. - Java में सब-पैकेज का उपयोग कैसे करें

    सबपैकेज सब-डायरेक्टरीज के समान हैं। एक उदाहरण पर विचार करें। कंपनी के पास एक com.apple.computers पैकेज था जिसमें एक Dell.java सोर्स फाइल थी, यह सबडायरेक्टरीज की एक श्रृंखला में समाहित होगी जैसे −....\com\apple\computers\Dell.javaकंपाइलेशन के समय, कंपाइलर इसमें परिभाषित प्रत्येक क्लास, इंटरफेस और एन्