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

जावा में स्थिर ब्लॉक से अपवाद कैसे फेंकें?

एक स्थिर अवरोध बयानों का एक सेट है, जिसे मुख्य () विधि के निष्पादन से पहले JVM द्वारा निष्पादित किया जाएगा। कक्षा लोड करते समय यदि हम कोई गतिविधि करना चाहते हैं तो हमें उस गतिविधि को स्थिर ब्लॉक के अंदर परिभाषित करना होगा क्योंकि यह ब्लॉक क्लास लोड होने के समय . पर निष्पादित होता है ।

एक स्टेटिक ब्लॉक से अपवाद फेंकें

  • एक स्थिर अवरोध केवल एक RunTimeException फेंक सकता है , या चेक किए गए अपवाद को पकड़ने के लिए प्रयास करें और पकड़ें ब्लॉक होना चाहिए।
  • एक स्थिर अवरोध तब होता है जब क्लास लोडर द्वारा क्लास लोड किया जाता है। कोड या तो स्थिर ब्लॉक . के रूप में आ सकता है या एक स्थिर डेटा सदस्य को प्रारंभ करने के लिए एक स्थिर विधि के लिए एक कॉल के रूप में।
  • दोनों ही मामलों में, अपवादों की जांच की गई संकलक द्वारा अनुमति नहीं है। जब एक अनचेक अपवाद होता है, यह ExceptionInInitializerError द्वारा लपेटा जाता है , जिसे तब उस थ्रेड के संदर्भ में फेंक दिया जाता है जिसने क्लास लोडिंग को ट्रिगर किया।
  • एक चेक किए गए अपवाद को स्थिर अवरोध से फेंकने का प्रयास कर रहा है भी संभव नहीं है। हमारे पास एक स्थिर ब्लॉक में एक कोशिश और पकड़ ब्लॉक हो सकता है जहां कोशिश ब्लॉक से एक चेक अपवाद फेंक दिया जा सकता है लेकिन हमें इसे पकड़ ब्लॉक के भीतर हल करना होगा। हम थ्रो कीवर्ड का उपयोग करके इसका और प्रचार नहीं कर सकते।

उदाहरण

public class StaticBlockException {
   static int i, j;
   static {
      System.out.println("In the static block");
      try {
         i = 0;
         j = 10/i;
      } catch(Exception e){
         System.out.println("Exception while initializing" + e.getMessage());
         throw new RuntimeException(e.getMessage());
      }
   }
   public static void main(String args[]) {
      StaticBlockException sbe = new StaticBlockException();
      System.out.println("In the main() method");
      System.out.println("Value of i is : "+i);
      System.out.println("Value of j is : "+ j);
   }
}

आउटपुट

In the static block
Exception while initializing/ by zero
Exception in thread "main" java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: / by zero
        at StaticBlockException.(StaticBlockException.java:10)

  1. हम जावा में जेटीबल से चयनित पंक्ति को कैसे हटा सकते हैं?

    एक JTable जटिल डेटा संरचनाओं को प्रदर्शित करने के लिए JComponent वर्ग का एक उपवर्ग है। एक JTable घटक मॉडल व्यू कंट्रोलर (MVC) का अनुसरण कर सकता है पंक्तियों और स्तंभों . में डेटा प्रदर्शित करने के लिए डिज़ाइन पैटर्न . एक JTable TableModelListener, TableColumnModelListener, ListSelectionListener, Ce

  1. जावा में CSV फ़ाइल से डेटा कैसे पढ़ा जाए?

    एक सीएसवी अल्पविराम से अलग किए गए मान . के लिए खड़ा है . CSV फ़ाइल में, प्रत्येक पंक्ति में ऐसे शब्द होते हैं जो अल्पविराम (,) . से अलग होते हैं और यह एक .csv . के साथ संग्रहीत किया जाता है विस्तार। हम readLine() . का उपयोग करके CSV फ़ाइल लाइन को लाइन दर लाइन पढ़ सकते हैं बफर्डरीडर . की विधि कक्

  1. विंडोज़ 10 में वेबसाइटों को खुलने से कैसे रोकें

    एक वेबसाइट वेब पेज और मल्टीमीडिया सामग्री जैसे संबंधित नेटवर्क वेब संसाधनों का एक संग्रह है जिसे आम तौर पर एक सामान्य डोमेन नाम से पहचाना जाता है और कम से कम एक वेब सर्वर पर प्रकाशित किया जाता है। कभी-कभी, आपको कुछ वेबसाइटों को ब्लॉक करने की आवश्यकता हो सकती है, उदाहरण के लिए, कार्यालय उपयोग के लिए