Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

What's wrong with this code? What does the output look like?

Posted on 2004-05-01
16
Medium Priority
?
180 Views
Last Modified: 2010-03-31
try{
System.out.print(“Hello world “);
}
finally {
System.out.println(“Finally Executing “);
}

What should my output look like? this wouldn't compile on my machine.
0
Comment
Question by:aquemini001
  • 5
  • 3
  • 3
  • +3
16 Comments
 
LVL 7

Expert Comment

by:maheshexp
ID: 10969964

always the format is
try{
    ...
}
catch(Exception e){
    ....
}
finally{
......
}
0
 
LVL 7

Expert Comment

by:maheshexp
ID: 10969969

http://www.site.uottawa.ca:4321/java/index.html#try-catch-finallystatement
http://www.churchillobjects.com/c/11012c.html
http://www.janeg.ca/scjp/flow/try.html

try{
   System.out.print(“Hello world “);
}
}
catch(Exception e){
}
finally{
System.out.println(“Finally Executing “);
}

output:
Hello world
Finally Executing
0
 
LVL 7

Expert Comment

by:maheshexp
ID: 10969972
have a look at beginners site...
http://www.janeg.ca/scjp/language.html
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 32

Expert Comment

by:ldbkutty
ID: 10969975
there should not be a try block without catch....

place a catch block after the try...like:

try{
System.out.println("Hello World");
}

catch(Exception e) {     // one or more catch block is a MUST.
System.out.println("Exception in : " +e);
}

finally {       // one or none....OPTIONAL
System.out.println("Finally Executing");
}
0
 
LVL 32

Expert Comment

by:ldbkutty
ID: 10970025
here also, the same repeated mahesh.... ;-) ...
0
 
LVL 7

Expert Comment

by:maheshexp
ID: 10970069
ok no problem..... :-)
0
 
LVL 7

Expert Comment

by:lhankins
ID: 10970103
Actually - its perfectly legal to have a try-finally (without a catch).

For example :

      try
      {
         System.out.println("hello");
      }
      finally
      {
         System.out.println("world");
      }

Will print out :

   Hello
   World

This is useful if you want to definitively do some sort of cleanup behavior (e.g. close a database connection), even in the face of an exception, but you don't want to handle the exception (e.g. it gets propagated out of the method, to the caller).
0
 
LVL 7

Expert Comment

by:maheshexp
ID: 10970120
yeah, some format for try catch is explained in the links i posted....
0
 
LVL 24

Expert Comment

by:sciuriware
ID: 10970553
aquemini001, your program with a try - finally is completely legal according to the JAVA 2 standards.

It doesn't compile because you should surround strings with "
that is: ordinary double quotes and not the wordprocessor characters in your example.

Om my machine, W2K JAVA 2 1.4.2_04 it compiles and works OK.

;JOOP!
0
 
LVL 30

Expert Comment

by:Mayank S
ID: 10971252
It is also possible that some other part of your program is giving compilation errors. Could you post the full code?
0
 

Author Comment

by:aquemini001
ID: 10972979
Some say i must have a "catch" after a try. Some say i don't. If it works both ways, which one is better? or is it just a matter of preference. Which was is more standard? to ALWAYS have a catch statement after a try? Can you u just have an empty catch statement followed by the "finally"?
Thanks
0
 
LVL 7

Accepted Solution

by:
lhankins earned 80 total points
ID: 10973038
Put a catch statement after a try if you can handle the exception or if you don't want it to propagate out of the method.

For example:

   void someFn()
   {  
      try
      {
         // some logic
      }
      catch (Exception e)
      {
          // log the exception
          // recover from the exception
      }
      finally
      {
         // cleanup any resources allocated during the try phase
      }
   }

If you can't handle the exception and you want it to propagate to calling code, you can just skip the catch statement (and add the exception to the method's throws clause).   This means the Exception will be propagated all the way back to the code which called your method.

   void someFn() throws Exception
   {  
      try
      {
         // some logic
      }
      finally
      {
         // cleanup any resources allocated during the try phase
      }
   }

Either way, the finally is still important, because code in the finally block is guaranteed to execute, regardless of whether an exception is thrown or not.

0
 

Author Comment

by:aquemini001
ID: 10973099
that helped, thanks!
0
 
LVL 32

Expert Comment

by:ldbkutty
ID: 10973778
Yep....sorry for my stupid post...

lhankins comment is cool...
0
 

Author Comment

by:aquemini001
ID: 10974404
no, your answers are good too, you've answered a couple of my other questons. thanks
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
Introduction This article is the first of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article explains our test automation goals. Then rationale is given for the tools we use to a…
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
Viewers will learn about arithmetic and Boolean expressions in Java and the logical operators used to create Boolean expressions. We will cover the symbols used for arithmetic expressions and define each logical operator and how to use them in Boole…
Suggested Courses

916 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question