home | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Java example source code file (exceptions.xml)

This example Java source code file (exceptions.xml) is included in the alvinalexander.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Learn more about this Java project at its project page.

Java - Java tags/keywords

american/english, apache, asf, commons, exceptions, french, hierarchies, java, license, math, see, the, you

The exceptions.xml Java example source code

<?xml version="1.0"?>

<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
  -->
  
<?xml-stylesheet type="text/xsl" href="./xdoc.xsl"?>
<document url="exceptions.html">
  <properties>
    <title>The Commons Math User Guide - Exceptions
  </properties>
  <body>
    <section name="19 Exceptions">

      <subsection name="19.1 Overview" href="overview">
        Commons Math defines a set of exceptions in order to convey the
        precise low-level cause of failure.
      </subsection>

      <subsection name="19.2 Unchecked Exceptions" href="unchecked">
        <p>
          Starting from version 3.0, all exceptions generated by the
          Commons Math code are <em>unchecked (i.e. they inherit from
          the standard <code>RuntimeException class).
          The main rationale supporting this design decision is that the
          exceptions generated in the library are not recoverable: They most
          of the time result from bad input parameters or some failure due to
          numerical problems.
          A thorough discussion of the pros and cons of checked and unchecked
          exceptions can be read in
          <a href="http://www.mindview.net/Etc/Discussions/CheckedExceptions">
            this post</a> by Bruce Eckel.
        </p>
      </subsection>

      <subsection name="19.3 Hierarchies" href="hierarchies">
        <p>
          The exceptions defined by Commons Math follow the Java standard
          hierarchies:
          <ul>
            <li>
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html">
                <code>IllegalArgumentException:
              A <a href="../apidocs/org/apache/commons/math3/exception/MathIllegalArgumentException.html">
                <code>MathIllegalArgumentException is thrown when some input
              parameter fails a precondition check.
            </li>
            <li>
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html">
                <code>IllegalStateException:
              A <a href="../apidocs/org/apache/commons/math3/exception/MathIllegalStateException.html">
                <code>MathIllegalStateException is thrown when some inconsistency
              has been detected.
            </li>
            <li>
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/MathArithmeticException.html">
                <code>ArithmeticException:
              A <a href="../apidocs/org/apache/commons/math3/exception/MathArithmeticException.html">
                <code>MathArithmeticException is thrown when conditions such as
              "division by zero" or "overflow" are encountered.
            </li>
            <li>
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/MathUnsupportedOperationException.html">
                <code>UnsupportedOperationException:
              A <a href="../apidocs/org/apache/commons/math3/exception/MathUnsupportedOperationException.html">
                <code>MathUnsupportedOperationException indicates that a feature
              is missing or does not make sense in the given context.
            </li>
          </ul>
        </p>

        <p>
          In all of the above exception hierarchies, several subclasses can
          exist, each conveying a specific underlying cause of the problem.
        </p>
      </subsection>

      <subsection name="19.4 Features" href="features">
        <ul>
          <li>Localization
            <p>
              The detailed error messages (i.e. the string returned by the
              <a href="http://docs.oracle.com/javase/6/docs/api/java/lang/Throwable.html#getLocalizedMessage()">
                getLocalizedMessage</a> method) can be localized.
              However, besides the American/English default, French is the only language
              for which a translation resource is available.
            </p>
          </li>
          <li>Exception "context"
            <p>
              Every exception generated by Commons Math implements the
              <a href="../apidocs/org/apache/commons/math3/exception/util/ExceptionContextProvider.html">
                ExceptionContextProvider</a> interface. A call to the
              <a href="../apidocs/org/apache/commons/math3/exception/util/ExceptionContextProvider.html#getContext()">
                getContext</a> method will return the
              <a href="../apidocs/org/apache/commons/math3/exception/util/ExceptionContext.html">
                ExceptionContext</a> instance stored in the exception, which the
              user can further customize by adding messages and/or any object.
            </p>
          </li>
        </ul>
      </subsection>

    </section>
  </body>
</document>

Other Java examples (source code examples)

Here is a short list of links related to this Java exceptions.xml source code file:



my book on functional programming

 

new blog posts

 

Copyright 1998-2019 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.