Skip to main content

Exceptions in Java and Eiffel: Two Extremes in Exception Design and Application

  • Chapter
Advanced Topics in Exception Handling Techniques

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4119))

Abstract

Exceptions are frequently a controversial language feature with both language designers and programmers. Exceptions are controversial because they complicate language semantics—and thus program design, testing, and verification—and some programmers find them annoying or difficult to use properly. By examining two programming languages that have very different, even opposing, exception mechanisms, a set of exception principles is introduced that summarize the key semantic and social issues surrounding exceptions.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Sutcliffe, R.J. (ed.): Modula-2 (Base Language). Number 10514-1:1996 in ISO/IEC Modula-2 Standardization. ISO/IEC (1999)

    Google Scholar 

  2. Wirth, N.: Programming in Modula-2. Springer, Heidelberg (1982)

    MATH  Google Scholar 

  3. Gosling, J., Joy, B., Steele, G., Bracha, G.: The Java Language Specification, 3rd edn. Addison-Wesley Publishing Company, Reading (2005)

    Google Scholar 

  4. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice-Hall, Englewood Cliffs (1988)

    Google Scholar 

  5. Meyer, B.: Disciplined exceptions. Technical Report TR-EI-13/EX, Interactive Software Engineering (1988)

    Google Scholar 

  6. Bezault, E., Howard, M., Kogtenkov, A., Meyer, B., Stapf, E.: Eiffel analysis, design and programming language. Technical Report ECMA-367, ECMA International (2005)

    Google Scholar 

  7. Leavens, G.T., Poll, E., Clifton, C., Cheon, Y., Ruby, C., Cok, D., Kiniry, J.: JML Reference Manual. Department of Computer Science, Iowa State University, 226 Atanasoff Hall. Draft revision 1.94 edn. (2004)

    Google Scholar 

  8. Leavens, G.T., Baker, A.L., Ruby, C.: JML: A Notation for Detailed Design. In: Behavioral Specifications of Business and Systems, pp. 175–188. Kluwer Academic Publishing, Dordrecht (1999), Available via: http://www.cs.iastate.edu/~leavens/JML.html

    Google Scholar 

  9. Hester, K.: What is JavaSignals? (1999), See: http://www.geeksville.com/~kevinh/projects/javasignals/

  10. Meyer, B.: Eiffel the Language, 3rd edn. Prentice-Hall, Englewood Cliffs (2002)

    Google Scholar 

  11. Meyer, B.: Eiffel: The Language. Prentice-Hall, Englewood Cliffs (1992)

    MATH  Google Scholar 

  12. Burdy, L., Cheon, Y., Cok, D., Ernst, M., Kiniry, J., Leavens, G.T., Leino, K., Poll, E.: An overview of JML tools and applications. International Journal on Software Tools for Technology Transfer (2005)

    Google Scholar 

  13. Jacobs, B., Poll, E.: A logic for the Java Modeling Language JML. In: Hussmann, H. (ed.) ETAPS 2001 and FASE 2001. LNCS, vol. 2029, pp. 284–299. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  14. Kiniry, J.R., Cok, D.R.: ESC/Java2: Uniting ESC/Java and JML: Progress and issues in building and using ESC/Java2 and a report on a case study involving the use of ESC/Java2 to verify portions of an Internet voting tally system. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol. 3362, pp. 108–128. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  15. Jacobs, B., Poll, E.: Java program verification at Nijmegen: Developments and perspective. In: Futatsugi, K., Mizoguchi, F., Yonezaki, N. (eds.) ISSS 2003. LNCS, vol. 3233, pp. 134–153. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  16. Eckel, B.: Does Java need checked exceptions? (2003), See: http://www.mindview.net/Etc/Discussions/CheckedExceptions particularly the ensuing feedback on this issue

  17. Posted by Eric Gunnerson; original author unknown.: Why doesn’t C# require exception specifications (2000)

    Google Scholar 

  18. Microsoft Corporation: .NET framework general reference, Documentation version 1.1.0 (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Kiniry, J.R. (2006). Exceptions in Java and Eiffel: Two Extremes in Exception Design and Application. In: Dony, C., Knudsen, J.L., Romanovsky, A., Tripathi, A. (eds) Advanced Topics in Exception Handling Techniques. Lecture Notes in Computer Science, vol 4119. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11818502_16

Download citation

  • DOI: https://doi.org/10.1007/11818502_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-37443-5

  • Online ISBN: 978-3-540-37445-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics