2016-03-31 6 views
-3

Моя цель - изменить мои сеттеры, чтобы бросить tractorException, если переданы недопустимые значения, а затем измените мой основной метод, чтобы попытаться поймать исключения. Проблема в том, что я не знаю, как изменить настройки, чтобы сделать ошибку исключения. Пожалуйста помоги.Как мне изменить этот код, чтобы получить ошибку исключения?

import java.util.*; 

public class tractorException 
{ 
     protected String name; 
     protected int VehicleID; 

    public String setName(String name) 
     { 
      return this.name = name; 

     } 

     String getName() 
     { 
      return this.name;   
     } 

    public int setVehicleID(int VehicleID) 
     { 
      if (VehicleID <= 0 || VehicleID > 100000) 
      { 
      return -1; 
      } 
      else 
      { 
       this.VehicleID = VehicleID; 
       return VehicleID; 

      } 
     } 

      public int getVehicleID() 
     { 
      return this.VehicleID; 
     } 

     tractorException() 
     { 
     setVehicleID(0); 
     setName(""); 
     } 

    @Override 
    public String toString() 
    { 
     return "Tractor Name= " + name + "VIN= " + VehicleID; 

    } 
    public static void main (String[] args) 
    { 

    } 
} 
+1

Ваш код не имеет особого смысла - Во-первых, 'TractorException' должен быть подкласс' Exception' или 'RuntimeException'. Во-вторых, вы, вероятно, не хотите, чтобы весь этот код выполнялся в 'TractorException'. Взгляд на [учебник] (http://www.tutorialspoint.com/java/java_exceptions.htm) - хорошее начало. – BadCash

ответ

1

Попробуйте сделать:

public class TractorException extends Exception 
{ 
    //implement whatever methods are necessary 
} 

В классе, который представляет собой Tractor.

public int setVehicleID(int VehicleID) throws TractorException 
{ 
    if (VechicleID <= 0) { 
    throw new TractorException("Invalid VIN: " + VehicleID); 
    } 
    else { 
    this.VehicleID = VehicleID; 
    return this.VehicleID; 
    } 

} 

В вашей основной метод, поймать TractorException

+0

Спасибо, я понимаю немного сейчас. – MajorJavaUser

Смежные вопросы