السلام عليكم ورحمة الله
اخواني تعلمت موضوع الـ Exceptions منذ ايام، واريد ان اطبقها في سؤال ما
في فرع من فروع السؤال مطلوب انشاء كلاس باسم CreditCard وفيه المتغيرات التالية:
String CardNumber;
double balance;
int limit;
ويجب ان تكون هذه الميثود في الكلاس:
void chargeCard(double amount) throws NotEnoughMoneyException, OverTheLimitException
ومطلوب ايضاً انشاء كلاس باسم OverTheLimitException وايضاً NotEnoughMoneyException التي ترث من الكلاس Exception.
سؤالي هو كيف ممكن ان اقوم بانشاء هذان القسمان.
قرأت عبر الانترنت ولكني لم انجح في ذلك، هذا ما كتبته:
CreditCard Class:
- import java.io.IOException;
- public class CreditCard {
- protected String CardNumber;
- protected double balance;
- protected int limit;
- /**
- * @param cardNumber
- * @param balance
- * @param limit
- */
- public CreditCard(String cardNumber, double balance, int limit) {
- super();
- setCardNumber(cardNumber);
- setBalance(balance);
- setLimit(limit);
- }
- /**
- * @return the cardNumber
- */
- public String getCardNumber() {
- return CardNumber;
- }
- /**
- * @param cardNumber the cardNumber to set
- */
- public void setCardNumber(String cardNumber) {
- CardNumber = cardNumber;
- }
- /**
- * @return the balance
- */
- public double getBalance() {
- return balance;
- }
- /**
- * @param balance the balance to set
- */
- public void setBalance(double balance) {
- this.balance = balance;
- }
- /**
- * @return the limit
- */
- public int getLimit() {
- return limit;
- }
- /**
- * @param limit the limit to set
- */
- public void setLimit(int limit) {
- this.limit = limit;
- }
- public void chargeCard(double amount) throws NotEnoughMoneyException, OverTheLimitException{
- try{
- this.balance=this.balance - amount;
- } catch(NotEnoughMoneyException e){
- }
- }
- }
لكن يظهر لي في هذا السطر:
catch(NotEnoughMoneyException e)
خطأ ما
Unreachable catch block for NotEnoughMoneyException. This Exception is never thrown from the try statement body.
لكني ام افهم ما هي المشكلة، فهذا اول استعمال لي مع الـ Exceptions
هذان هما الكلاسات الخاصة بالـ Exceptions
NotEnoughMoneyException class
- public class NotEnoughMoneyException extends Exception {
- protected CreditCard card;
- public NotEnoughMoneyException(){
- super ("You Are Havn't Enough Money To Charge");
- }
- }
OverTheLimitException class
- public class OverTheLimitException extends Exception{
- public OverTheLimitException(){
- super ("You Are Over the Limited Balance ");
- }
- }
ما هو الحل وأين الخطأ او ما هو سبب الخطأ
بارك الله فيكم
السلام عليكم