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

हमें जावा में उपयोगकर्ता द्वारा परिभाषित अपवाद वर्ग कब बनाना चाहिए?

हमें जावा में अपना अपवाद बनाना चाहिए। अपनी अपवाद कक्षाएं लिखते समय निम्नलिखित बातों का ध्यान रखें

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

हम अपने स्वयं के अपवाद वर्ग को निम्नानुसार परिभाषित कर सकते हैं:

class MyException extends Exception {
}

हमें अपना अपवाद वर्ग बनाने के लिए केवल अपवाद वर्ग का विस्तार करने की आवश्यकता है। इन्हें चेक अपवाद माना जाता है। निम्नलिखित अपर्याप्त फंड अपवाद वर्ग एक उपयोगकर्ता द्वारा परिभाषित अपवाद है जो अपवाद वर्ग का विस्तार करता है, इसे एक चेक अपवाद बना देता है।

उदाहरण

// File Name InsufficientFundsException.java
import java.io.*;
class InsufficientFundsException extends Exception {
   private double amount;
   public InsufficientFundsException(double amount) {
      this.amount = amount;
   }
   public double getAmount() {
      return amount;
   }
}

// File Name CheckingAccount.java
class CheckingAccount {
   private double balance;
   private int number;
   public CheckingAccount(int number) {
      this.number = number;
   }
   public void deposit(double amount) {
      balance += amount;
   }
   public void withdraw(double amount) throws InsufficientFundsException {
      if(amount <= balance) {
         balance -= amount;
      }
      else {
         double needs = amount - balance;
         throw new InsufficientFundsException(needs);
      }
   }
   public double getBalance() {
      return balance;
   }
   public int getNumber() {
      return number;
   }
}
// File Name BankDemo.java
public class BankDemo {
   public static void main(String [] args) {
      CheckingAccount c = new CheckingAccount(101);
      System.out.println("Depositing $500...");
      c.deposit(500.00);
      try {
         System.out.println("\nWithdrawing $100...");
         c.withdraw(100.00);
         System.out.println("\nWithdrawing $600...");
         c.withdraw(600.00);
      } catch(InsufficientFundsException e) {
         System.out.println("Sorry, but you are short $" + e.getAmount());
         e.printStackTrace();
      }
   }
}

आउटपुट

Depositing $500...
Withdrawing $100...
Withdrawing $600...
Sorry, but you are short $200.0
InsufficientFundsException
at CheckingAccount.withdraw(BankDemo.java:32)
at BankDemo.main(BankDemo.java:53)

  1. जावा में सार वर्ग

    जिस वर्ग की घोषणा में सार कीवर्ड होता है उसे अमूर्त वर्ग के रूप में जाना जाता है। एब्स्ट्रैक्ट क्लासेस में एब्सट्रैक्ट मेथड्स हो भी सकते हैं या नहीं भी हो सकते हैं, यानी बॉडी के बिना मेथड्स ( public void get(); ) लेकिन, यदि किसी वर्ग में कम से कम एक सार विधि है, तो कक्षा को सार घोषित किया जाना चाहि

  1. जावा में अंतिम कक्षा

    किसी वर्ग को अंतिम घोषित करने का मुख्य उद्देश्य वर्ग को उपवर्ग होने से रोकना है। यदि किसी वर्ग को अंतिम के रूप में चिह्नित किया जाता है तो कोई भी वर्ग अंतिम वर्ग से किसी भी विशेषता को प्राप्त नहीं कर सकता है। public final class Test {    // body of class }

  1. उदाहरण के साथ पायथन में उपयोगकर्ता द्वारा परिभाषित अपवाद

    जब भी कोड असामान्य रूप से व्यवहार करता है और उसका निष्पादन अचानक बंद हो जाता है, तो पायथन त्रुटियों और अपवादों को फेंक देता है। पायथन हमें ऐसे परिदृश्यों को संभालने के लिए उपकरण प्रदान करता है, जो अपवाद से निपटने की विधि की मदद से कोशिश-छोड़कर बयानों का उपयोग करता है। कुछ मानक अपवाद जो पाए जाते हैं