- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to Handle Exceptions in Ruby
Exceptions in programming are errors that occur at runtime. They are hard to handle in an effective manner, but it is important to handle them, else they halt the program execution.
Some of the common exceptions that one can encounter are −
trying to open a file that is not there,
dividing the number with zero,
running out of memory etc.
Now let's take a couple of examples to demonstrate how exceptions halt the execution of a Ruby program.
Example 1
Consider the code shown below.
taking two integer value $First = 10; $Second = 0; # divide by zero error $Third = $First / $Second; puts "The Result is: #{$Third}"
In this program, we are having two integers and we are dividing them, where the second integer is a zero, which will result in an exception.
Output
It will produce the following output.
main.rb:1:in `': undefined local variable or method `value' for main:Object (NameError)
We saw that in the above example, we encountered an exception that occurred due to some error in the code, but we can even create our own exceptions with the help of the raise keyword.
Example 2
Consider the code shown below.
# defining a method def raising_exception puts 'Before Exception!' # using raise to create exception raise 'Exception Created' puts 'After Exception Arise' end # Calling the method raising_exception
In this program, we are creating a new exception and then we are having two logs in the method where the exception is raised.
It should be noted that once an exception is encountered, there won't be any logs that will be printed after it, as the program comes to a halt.
Output
It will produce the following output.
Before Exception! Traceback (most recent call last): 1: from main.rb:13:in `<main>' main.rb:7:in `raising_exception': Exception Created (RuntimeError)
Example 3
Now that we have seen how an exception works and how we can create an exception for ourselves, let's see how we can handle that exception through an example. Consider the code shown below
# defining a method def rescue_from_raise begin puts 'Before Exception!' # using raise to create an exception raise 'Exception Created!' puts 'After Exception!' # using Rescue method rescue puts 'Saved!' end puts 'Outside!' end # calling method rescue_from_raise
Output
It will produce the following output.
Before Exception! Saved! Outside!
- Related Articles
- How to handle Exceptions while working with JDBC applications?
- Suggest a cleaner way to handle Python exceptions?
- How can we create an exception filter to handle unhandled exceptions in C#\nASP.NET WebAPI?
- How to use BigDecimal in Ruby?
- How to freeze objects in Ruby?
- How to invoke methods in Ruby?
- How to Implement Multithreading in Ruby
- How to catch exceptions in JavaScript?
- How to display ruby annotation in HTML5?
- How to use global variables in Ruby?
- How to implement Data Abstraction in Ruby?
- How to Use Instance Variables in Ruby
- How to use Custom Exceptions in JavaScript?
- How to display text ruby annotation in HTML5?
- How to Read and Writes Files in Ruby
