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

हम जावा 9 में सब्सक्राइबर इंटरफ़ेस को कैसे कार्यान्वित कर सकते हैं?


Java 9 प्रतिक्रियाशील धाराएं बनाने के लिए समर्थन करता है कुछ इंटरफेस पेश करके:प्रकाशक , सदस्य , सदस्यता , और सबमिशन प्रकाशक वह वर्ग जो प्रकाशक . को लागू करता है इंटरफेस। प्रत्येक इंटरफ़ेस प्रतिक्रियाशील . के सिद्धांतों के अनुरूप एक अलग भूमिका निभा सकता है स्ट्रीम

हम सदस्य का उपयोग कर सकते हैं एक प्रकाशक . द्वारा प्रकाशित किए जा रहे डेटा की सदस्यता लेने के लिए इंटरफ़ेस . हमें सदस्य . को लागू करने की आवश्यकता है इंटरफ़ेस और सार विधियों के लिए कार्यान्वयन प्रदान करें।

Flow.Subscriber इंटरफ़ेस विधियाँ:

  • पूर्ण होने पर (): इस विधि को तब कहा जाता है जब प्रकाशक वस्तु अपनी भूमिका पूरी करती है।
  • ऑन एरर (): प्रकाशक में कुछ गलत होने पर इस विधि को बुलाया गया है और सब्सक्राइबर को सूचित किया जाता है।
  • अगले पर (): जब भी प्रकाशक के पास सभी सब्सक्राइबर्स को सूचित करने के लिए नई जानकारी होती है, तो इस विधि को कहा जाता है।
  • ऑनसब्सक्राइब(): जब प्रकाशक सब्सक्राइबर जोड़ता है तो इस विधि को बुलाया गया है।

उदाहरण

आयात करें मजबूत> { निजी प्रवाह.सदस्यता अंशदान; निजी बूलियन isDone; @ ओवरराइड करें सार्वजनिक शून्य सदस्यता पर (प्रवाह। सदस्यता सदस्यता) { System.out.println ("सदस्यता ली गई"); यह सदस्यता =सदस्यता; यह.सदस्यता.अनुरोध(1); } @ओवरराइड सार्वजनिक शून्य अगले पर (पूर्णांक आइटम) { System.out.println ("प्रसंस्करण" + आइटम); यह.सदस्यता.अनुरोध(1); } @ओवरराइड सार्वजनिक शून्य त्रुटि पर (फेंकने योग्य) {फेंकने योग्य.प्रिंटस्टैकट्रेस (); } @ओवरराइड सार्वजनिक शून्य पूर्ण पर () { System.out.println ("प्रसंस्करण किया गया"); हो गया =सच; } } सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग आर्ग []) इंटरप्टेड एक्सेप्शन फेंकता है { SubmissionPublisher प्रकाशक =नया सबमिशनप्रकाशक (); सदस्य सब्सक्राइबर =नया सब्सक्राइबर (); प्रकाशक.सब्सक्राइब (सब्सक्राइबर); इंटस्ट्रीम intData =IntStream.rangeClosed (1, 10); intData.forEach(प्रकाशक::सबमिट करें ); प्रकाशक।बंद करें (); जबकि (! subscriber.isDone) {थ्रेड.स्लीप(10); } System.out.println ("हो गया"); }}

आउटपुट

सब्सक्राइब्ड प्रोसेसिंग 1प्रोसेसिंग 2प्रोसेसिंग 3प्रोसेसिंग 4प्रोसेसिंग 5प्रोसेसिंग 6प्रोसेसिंग 7प्रोसेसिंग 8प्रोसेसिंग 9प्रोसेसिंग 10प्रोसेसिंग हो गई 

  1. हम जावा में जेपीनल की पेंटकंपोनेंट () विधि को कैसे कार्यान्वित कर सकते हैं? हम जावा में जेपीनल की पेंटकंपोनेंट () विधि को कैसे कार्यान्वित कर सकते हैं?

    A JPanel एक हल्का कंटेनर है और यह एक अदृश्य . है घटक जावा में। JPanel का डिफ़ॉल्ट लेआउट FlowLayout है . JPanel बनने के बाद, अन्य घटकों को JPanel . में जोड़ा जा सकता है इसके जोड़ें () . पर कॉल करके वस्तु विधि कंटेनर . से विरासत में मिली है कक्षा। paintComponent() JPanel . पर कुछ आकर्षित करने क

  1. जावा में BorderFactory का उपयोग करके हम विभिन्न सीमाओं को कैसे कार्यान्वित कर सकते हैं? जावा में BorderFactory का उपयोग करके हम विभिन्न सीमाओं को कैसे कार्यान्वित कर सकते हैं?

    बॉर्डर फैक्ट्री एक कारखाना . है वर्ग जो जावा में विभिन्न प्रकार की सीमाएँ प्रदान करता है। सीमाओं के प्रकार बेवेलबॉर्डर :यह बॉर्डर उठाया . खींचता है या निचला उभरे हुए किनारे। खाली सीमा :यह कोई ड्राइंग नहीं करता, लेकिन जगह लेता है। EtchedBorder :एक निचली नक़्क़ाशीदार सीमा एक आयत और एक उभरी हुई

  1. हम जावा में JToggleButton को कैसे कार्यान्वित कर सकते हैं? हम जावा में JToggleButton को कैसे कार्यान्वित कर सकते हैं?

    JToggleButton एक JToggleButton सार बटन . का विस्तार है और इसका उपयोग उन बटनों को दर्शाने के लिए किया जा सकता है जिन्हें चालू . पर टॉगल किया जा सकता है और बंद । जब JToggleButton पहली बार दबाया जाता है, यह दबाया रहता है और इसे दूसरी बार दबाने पर ही छोड़ा जा सकता है। एक JToggleButton एक एक्शनइवें