Exceptional Constructors - Java Tutorials

exceptional constructors

Exceptional Constructors - Java Tutorials

Exception in Constructor

In some situation it is possible that the constructor of a class throw exception. In such condition you should have proper code to handle it. In this section we will going to discuss how we handle exception thrown by a constructor.

Given below example will give you a clear idea how a constructor can throw exception and how should we handle it :

EXAMPLE

Given below a parameterized constructor which accept file name as string argument. This constructor will open the file, But if there is a problem in opening file, it will revert calling routine with a exception or simply it throw the exception back to the calling routine.  

package simpleCoreJava;

import java.io.*;

class WordCount2
{
//creates BufferedReader to read/open the input file
private BufferedReader br=null;

//print writer to write to a file
private PrintWriter pw=null;

public WordCount2(String afile) throws Exception
{
File inFile=new File(afile);
//if the file the user puts in does not exist, then throw an exception
if(inFile.exists())
{
try
{
br=new BufferedReader(new FileReader(afile));
}

catch(FileNotFoundException fnfe)
{
System.out.println(fnfe.getMessage());
}

catch(IOException ioe)
{
System.out.println(ioe.getMessage());
}

catch(Exception e)
{
System.out.println(e.getMessage());
}
}

else
{
throw new Exception("The input file does not exist");
}

}
}
public class WordCount{
public static void main(String args[])
{
try {
WordCount2 w2= new WordCount2("C:/ankit.txt");
} catch (Exception e) {
e.printStackTrace();
}
}
}

OUTPUT


 java.lang.Exception: The input file does not exist
 at simpleCoreJava.WordCount2.<init>(WordCount.java:42)                                                    
 at simpleCoreJava.WordCount.main(WordCount.java:51)

 

Tutorials

  1. Assertion in java
  2. Anonymous Inner Classes - Anonymous Inner Classes tutorial
  3. Appending Strings - Java Tutorials
  4. Assertion in Java
  5. Autoboxing unboxing in Java - Java Tutorials
  6. Thread Deadlocks - Java Tutorials
  7. BASIC Java - Java Tutorials
  8. Interthread Communication in Java
  9. boolean comparisons - tutorial
  10. Catching Exceptions in GUI Code - Java Tutorials
  11. Exception in Java - Java Tutorials
  12. Causing Deadlocks in Swing Code
  13. Class names don't identify a class - Java Tutorials
  14. Commenting out your code - Java Tutorials
  15. Java Deadlocks - Java Deadlocks Tutorials, Deadlocks in Java
  16. Disassembling Java Classes - Java Tutorials
  17. Double-checked locking,java tutorials,java tutorial
  18. Exceptional Constructors - Java Tutorials
  19. Final Methods - Java Tutorials
  20. garbage collection in java
  21. Java - JDK Tutorials
  22. J2EE Singleton Pattern - Design Pattern Tutorials
  23. Java Comments - Java Tutorials
  24. Java Field Initialisation - Java Tutorials
  25. Java HashSet  - Java Tutorials
  26. Java Multi Dimensions Array - Java Tutorials
  27. java awt package tutorial
  28. Java GC
  29. Java HashMap - Java Tutorials
  30. JDK 1.4 the NullPointerException - Java Tutorials
  31. HashMap and HashCode
  32. LinkedHashMap - Java Tutorials
  33. Which is Faster - LinkedList or ArrayList?
  34. Making Enumerations Iterable - JDK 5 Example
  35. Making Exceptions Unchecked - java tutorial,java tutorials
  36. Creation Time Comparison of Multi Dimensional Array- Java Tutorials
  37. Multicasting in Java - java tutorials,tutorial
  38. Non-virtual Methods in Java - java tutorials
  39. Orientating Components Right to Left,java newsletter,java,tutorial
  40. The link to the outer class,java tutorial,java tutorials