Skip to main content

What is Java Custom Exception?

Java Custom Exception


Custom exceptions are exceptions that we can create on our own by inheriting Exception class. This how we can use all the functionalities of the exception class. Java custom exceptions are used to customize the exception according to user need. Here is an example-

  1. package com.Akshay.exceptions;
  2. /**@author Akshay Ingole**/
  3. public class InvalidUserNameException extends Exception {
  4. private static final long serialVersionUID = 1L;
  5. InvalidUserNameException(String s) {
  6. super(s);
  7. }
  8. }

Now your test program is
  1. package com.Akshay.exceptions;
  2. /** @author Akshay Ingole**/
  3. public class TestException {
  4. public static void validateName(String name) throws InvalidUserNameException {
  5. if (" ".equalsIgnoreCase(name) || null == name)
  6. throw new InvalidUserNameException("Name is not valid");
  7. else
  8. System.out.println("Hello " + name);
  9. }
  10. public static void main(String args[]) {
  11. try {
  12. validateName("Akshay");
  13. validateName(" ");
  14. } catch (Exception e) {
  15. System.out.println("Exception occured: " + e);
  16. }
  17. }
  18. }
  19. Output
  20. Hello Akshay
  21. Exception occured: com.Akshay.exceptions.InvalidUserNameException: Name is not valid
Hope this will helps you. 

Comments

Popular posts from this blog

Java RoadMap

 

JDK 25: The new features in Java 25

 Java Development Kit (JDK) 25, scheduled for release in September 2025, is set to introduce several significant enhancements. Here's an overview of the notable features: 1. Stable Values API (Preview): This feature introduces stable values—objects holding immutable data treated as constants by the Java Virtual Machine (JVM). By allowing greater flexibility in initialization timing compared to final fields, stable values aim to improve application startup times. They enable performance optimizations akin to constant-folding, previously exclusive to JDK code, and ensure thread-safe, single-time initialization. This decouples the creation of stable values from their initialization without significant performance penalties.  2. Removal of 32-bit x86 Port: JDK 25 plans to eliminate both the source code and build support for the 32-bit x86 port, which was deprecated in JDK 24. Maintaining this port has become less beneficial, especially with the challenges in keeping it updated wit...

Mastering Java Streams: Best Practices and Common Pitfalls

  Introduction Java Streams, introduced in Java 8, have revolutionized the way developers handle collections and data processing in Java. However, mastering Streams requires understanding not just the syntax but also the best practices and common pitfalls that can arise. In this post, we'll explore advanced tips for working with Java Streams, helping you write more efficient, readable, and maintainable code. Table of Contents Introduction to Java Streams Best Practices for Using Streams Leverage Parallel Streams Wisely Avoid State Mutations in Stream Operations Use Method References for Cleaner Code Short-Circuiting Operations for Efficiency Common Pitfalls in Java Streams Overusing Parallel Streams Modifying Collections During Stream Operations Ignoring Lazy Evaluation Improper Use of Optional with Streams Advanced Stream Operations Grouping and Partitioning Collectors and Custom Collectors FlatMap for Complex Mappings Conclusion 1. Introduction to Java Streams Java Streams provid...