जावा अनाम वर्ग

इस ट्यूटोरियल में, आप उदाहरणों की मदद से जावा में अनाम कक्षाओं के बारे में जानेंगे।

जावा में, एक वर्ग में एक अन्य वर्ग हो सकता है जिसे नेस्टेड क्लास कहा जाता है। किसी भी नाम दिए बिना एक नेस्टेड क्लास बनाना संभव है।

एक नेस्टेड वर्ग जिसका कोई नाम नहीं है उसे एक अनाम वर्ग के रूप में जाना जाता है।

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

 class outerClass ( // defining anonymous class object1 = new Type(parameterList) ( // body of the anonymous class ); ) 

बेनामी कक्षाएं आमतौर पर उपवर्गों का विस्तार करती हैं या इंटरफेस लागू करती हैं।

यहाँ, Type हो सकता है

  1. एक सुपरक्लास जो एक अनाम वर्ग का विस्तार करता है
  2. एक इंटरफ़ेस जो एक अनाम वर्ग लागू करता है

उपर्युक्त कोड object1रनटाइम पर एक अनाम वर्ग का एक ऑब्जेक्ट बनाता है।

नोट: बेनामी वर्गों को एक अभिव्यक्ति के अंदर परिभाषित किया गया है। तो, अभिव्यक्ति के अंत को इंगित करने के लिए गुमनाम कक्षाओं के अंत में अर्धविराम का उपयोग किया जाता है।

उदाहरण 1: बेनामी कक्षा एक कक्षा का विस्तार

 class Polygon ( public void display() ( System.out.println("Inside the Polygon class"); ) ) class AnonymousDemo ( public void createClass() ( // creation of anonymous class extending class Polygon Polygon p1 = new Polygon() ( public void display() ( System.out.println("Inside an anonymous class."); ) ); p1.display(); ) ) class Main ( public static void main(String() args) ( AnonymousDemo an = new AnonymousDemo(); an.createClass(); ) ) 

आउटपुट

 एक अनाम वर्ग के अंदर। 

उपरोक्त उदाहरण में, हमने एक वर्ग बहुभुज बनाया है। इसकी एक ही विधि है display()

हमने तब एक अनाम वर्ग बनाया जो वर्ग बहुभुज का विस्तार करता है और display()विधि को अधिलेखित करता है।

जब हम प्रोग्राम चलाते हैं, तो अनाम वर्ग का ऑब्जेक्ट p1 बनाया जाता है। ऑब्जेक्ट तब display()अनाम वर्ग की विधि को कॉल करता है ।

उदाहरण 2: एक इंटरफ़ेस लागू करने वाला अनाम वर्ग

 interface Polygon ( public void display(); ) class AnonymousDemo ( public void createClass() ( // anonymous class implementing interface Polygon p1 = new Polygon() ( public void display() ( System.out.println("Inside an anonymous class."); ) ); p1.display(); ) ) class Main ( public static void main(String() args) ( AnonymousDemo an = new AnonymousDemo(); an.createClass(); ) ) 

आउटपुट

 एक अनाम वर्ग के अंदर। 

उपरोक्त उदाहरण में, हमने एक अनाम वर्ग बनाया है जो Polygonइंटरफ़ेस को लागू करता है।

बेनामी वर्गों के लाभ

अनाम कक्षाओं में, जब भी आवश्यकता होती है, तब ऑब्जेक्ट बनाए जाते हैं। यही है, कुछ विशिष्ट कार्य करने के लिए ऑब्जेक्ट बनाए जाते हैं। उदाहरण के लिए,

 Object = new Example() ( public void display() ( System.out.println("Anonymous class overrides the method display()."); ) ); 

यहां, अनाम वर्ग की एक वस्तु को गतिशील रूप से बनाया जाता है जब हमें display()विधि को ओवरराइड करने की आवश्यकता होती है ।

बेनामी कक्षाएं भी हमें हमारे कोड को संक्षिप्त बनाने में मदद करती हैं।

दिलचस्प लेख...