An exception (or exceptional event) is a problem that arises during the execution of a program. When an Exception occurs the normal flow of the program is disrupted and the programApplication terminates abnormally Air Max Schuhe Schweiz , which is not recommended, therefore, these exceptions are to be handled. An exception can occur for many different reasons. Following are some scenarios where an exception occurs. 鈥?A user has entered an invalid data. 鈥?A file that needs to be opened cannot be found. 鈥?A network connection has been lost in the middle of communications or the JVM has run out of memory. Some of these exceptions are caused by user error, others by programmer error Nike Air Max Schweiz , and others by physical resources that have failed in some manner. Based on these, we have three categories of Exceptions. You need to understand them to know how exception handling works in Java programming. 鈥?Checked exceptions 鈭?A checked exception is an exception that occurs at the compile time, these are also called as compile time exceptions. These exceptions cannot simply be ignored at the time of compilation, the programmer should take care of (handle) these exceptions.
1. Use a single Air Max Schweiz , system-wide exception class Instead of creating separate classes for each exception type, create just one. And make it extend RuntimeException. This will reduce your class count and remove the need to declare exceptions you aren鈥檛 going to handle anyway. I know what you鈥檙e thinking: How will I tell exceptions apart if they鈥檙e all the same type? And how will I track type-specific properties? Read on! 2. Use enums for error codes Most of us were trained to put the cause of an exception into its message. This is fine when reviewing log files (ugh), but it does have drawbacks: 1. Messages can鈥檛 be translated (unless you鈥檙e Google). 2. Messages can鈥檛 be easily mapped to user-friendly text. 3. Messages can鈥檛 be inspected programmatically. Putting info in the message also leaves the wording up to each developer, which can lead to different phrases for the same failure.
A better approach is to use enums to indicate the exception鈥檚 type. Create one enum for each category of errors (payments http://www.airmaxtnschweiz.ch/ , authentication, etc.). Make the enums implement an ErrorCode interface and reference it as a field in the exception. When throwing exceptions, simply pass in the appropriate enum.
Now when you need to test for a specific case, just compare the exception鈥檚 code with the enum. 3. Add error numbers to enums In some cases a numerical error code can be associated with each exception. HTTP responses for example. For those cases Air Max TN Günstig , add a getNumber method to the ErrorCode interface and implement it in each enum. learn java tutorial
Numbering can be globally unique across all enums or each enum can be responsible for numbering itself. You can even use the implicit ordinal() method or load numbers from a file or database. 4. Add dynamic fields to your exceptions Good exception handling means also recording relevant data, not just the stack trace. Doing this will save you big time when trying to diagnose and reproduce errors. And customers won鈥檛 have to tell you what they were doing when your app stopped working (you鈥檒l already know and hopefully have fixed it). The easiest way to do this is to add a field to the exception. The new field鈥檚 job will be to hold all your exception related data by name. You鈥檒l also need to add a generic setter method following the fluent interface pattern.
5. Prevent unnecessary nesting Long, redundant stack traces help no one. Even worse, they waste your time and resources. When rethrowing exceptions Air Max Günstig , call a static wrap method instead of the exception鈥檚 constructor . The wrap method will be responsible for deciding when to nest exceptions and when to just return the original instance. 6. Use a central logger with a web dashboard Consider this tip a bonus. Depending on your situation, getting access to production logs could be quite a hassle. A hassle that may involve multiple go-betweens (since many developers don鈥檛 have access to production environments). Things get worse if you鈥檙e in a multi-server environment. Finding the right server 鈥?or determining that the problem only affects one server 鈥?can be quite a headache. My recommendations are: 1. Aggregate your logs in a single place, preferably a database. 2. Make that database accessible from a web browser. There are many ways to do this and may products to choose from: log collectors, remote loggers Air Max TN Schweiz Sale , JMX agents, system monitoring software, etc. You can even build it yourself. The main thing is that you do it soon. Once you have it, you鈥檒l be able to: 鈥?Troubleshoot issues in a matter of seconds. 鈥?Have a URL for each exception that you can bookmark or email around. 鈥?Enable your support staff to determine root causes without involving you. 鈥?Prevent testers from creating multiple tickets for the same bug. Plus they鈥檒l have an exception URL to put in their ticket. 鈥?Save money for your business. 鈥?Keep your weekend and reputation intact.
More About the Author
We offer innovative and customized Java Training in Bangalore. Best Java course in Bangalore with Certified Experts. Go to free demo classes Air Max Plus TN Ultra Schweiz , get prepared by 8yrs experienced tutors and furthermore get hands on live project. Visit: Total Views: 141Word Count: 805See All articles From Author