wood burning stoves 2.0*
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes Exercise 5-4: Creating an Exception Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "Exercise 5-4: Creating an Exception" Watch "Exercise 5-4: Creating an Exception" New topic
Author

Exercise 5-4: Creating an Exception

saloni jhanwar
Ranch Hand

Joined: Feb 09, 2012
Posts: 583

What do you think it is correct ?
Book->K&B->Chapter5->Page->377
Exercise 5-4: Creating an Exception
In this exercise we attempt to create a custom exception. We won't put in any new methods (it will have only those inherited from Exception), and because it extends Exception, the compiler considers it a checked exception. The goal of the program is to determine whether a command-line argument, representing a particular food (as a string), is considered bad or OK.
  • Let's first create our exception. We will call it BadFoodException. This exception will be thrown when a bad food is encountered.
  • Create an enclosing class called MyException and a main() method, which will remain empty for now.
  • Create a method called checkFood(). It takes a String argument and throws our exception if it doesn't like the food it was given. Otherwise, it tells us it likes the food. You can add any foods you aren't particularly fond of to the list.
  • Now in the main() method, you'll get the command-line argument out of the String array, and then pass that String on to the checkFood() method. Because it's a checked exception, the checkFood() method must declare it, and the main() method must handle it (using a try/catch). Do not have main() declare the exception, because if main() ducks the exception, who else is back there to catch it?




  • Tell the difficulties that i am difficult.
    Greg Charles
    Sheriff

    Joined: Oct 01, 2001
    Posts: 2833
        
      11

    Pretty good. There's no need to create a String object from a String literal though. Just use the literal. In other words.



    Also, it's good when doing a String comparison to make the call on the String you know isn't null. So:



    Finally, if you're trying to get a case insensitive comparison there, you're missing a lot of cases: "Bad", "BAd", "bAd", etc. Instead do:



    saloni jhanwar
    Ranch Hand

    Joined: Feb 09, 2012
    Posts: 583

    Thank you very much Greg Charle

    I've one doubt, whereas i know equal() takes object as argument, then how string literal is allowed here? because String class doesn't provide wrapper class for string literal
    Greg Charles
    Sheriff

    Joined: Oct 01, 2001
    Posts: 2833
        
      11

    String is one the very few ways where the Java language and the Java API mix. A String literal is actually an object, an instance of the String class.
    saloni jhanwar
    Ranch Hand

    Joined: Feb 09, 2012
    Posts: 583

    Greg Charles wrote:String is one the very few ways where the Java language and the Java API mix. A String literal is actually an object, an instance of the String class.


    Thank you.
     
    I agree. Here's the link: http://aspose.com/file-tools
     
    subject: Exercise 5-4: Creating an Exception
     
    Similar Threads
    Checking the value of a string
    ERROR in K&B 1.4 book (print 2005)
    Java 1.5 test Exercise 5-4 Sun Certified Programmer for Java 5
    illegal start of expression when declaring method that throws an exception
    Page 377 Creating an Exception Exercise 5-4