Here’s an example:
Code For Balance Class--------------------------------------------------------------------------------// Demo class for User-Defined Exceptions To Ensure The// Validity of Data Contained In A Classimport java.io.*;public class Balance{ int bal; public Balance(){ } public void setBalance( int amt ){ this.bal = amt; } public void withdraw( int amt ) throws NoSufficientFundException { if (bal >= amt) { bal = bal - amt; } else { throw new NoSufficientFundException("Balance is less than what uexpect..some errormessage.."); } } public void getBalance() { return bal; }}--------------------------------------------------------------------------------Code For NoSufficientFundException--------------------------------------------------------------------------------// Exception Class For No Sufficient Fund(userdefined one)public class NoSufficientFundException extends Exception{ String strValue; public PositionException( String value) { this.strValue = value; } public String toString() { return "Exception occurred.. " + strValue; }}--------------------------------------------------------------------------------Code For ( Test)Main Program--------------------------------------------------------------------------------// Test Program For Class Balance// Dealing With The Exceptions That It Throwsimport java.io.*;public class TestBalance{ static public void main( String[] args ) { Balance obj = new Balance(); try { obj.setBalance(100); //some code.... obj.withdraw(150); //here the amount we specified is greater thanthe actual balance obj.getBalance(); } catch( NoSufficientFundException e ) { System.out.println(e); } //end of catch } //end of main}//end of TestBalance