Como criar uma exceção definida pelo usuário em Java

Como criar uma exceção definida pelo usuário em Java
Um erro de tempo de execução que acontece enquanto um processo é executado é uma exceção. O programa termina abruptamente quando ocorre uma exceção e o código após a linha que causou a exceção não será executada. Em Java, classes de exceção como aritmeticexception e nullpointerException já estão definidas no “Exceção" aula. No entanto, você pode fazer uma exceção definida pelo usuário em Java e usar a palavra-chave de arremesso com eles.

Este manual ensinará o método de criar exceções definidas pelo usuário Java.

Como criar uma exceção definida pelo usuário em Java?

Em Java, você pode criar uma exceção e jogá -lo utilizando o “lançarPalavra -chave. Exceções definidas ou personalizadas de usuário são os nomes dados a essas exceções.

Para criar uma exceção definida pelo usuário, primeiro, você estenderá a classe com o “Exceção”Classe e, em seguida, use um dos métodos abaixo mencionados:

  • Método getMessage ()
  • Método ToString ()

Vamos entender os dois métodos para criar exceções definidas pelo usuário com exemplos.

Método 1: Crie uma exceção definida pelo usuário em Java usando o método getMessage ()

Nesta seção, usaremos um “getMessage ()”Método para lançar uma exceção com o“lançarPalavra -chave. Passaremos uma string usada como uma exceção ao construtor do pai “Exceção”Classe invocando a“super()”Método no atual construtor de classe.

Sintaxe

Siga a sintaxe dada para exceção definida pelo usuário:

obj.getMessage ();

Exemplo 1

Primeiro, vamos estender nossa classe ao “Exceção”Classe, então crie um construtor parametrizado que leva uma string que será lançada como uma exceção. No construtor do “Exemplo”Classe, passaremos o parâmetro do tipo de sequência“s”E chame o“super()”Método com argumento“s”Isso é passado para um construtor da classe pai:

publicicexample (strings)

super (s);

No método main (), primeiro criaremos um objeto da classe e passaremos uma string como um argumento porque a classe contém um construtor parametrizado. Então, faça uma exceção com o objeto da classe. Essas operações serão adicionadas em um bloco de tentativa. Em seguida, no bloco de captura, chamaremos o método getMessage () para imprimir a mensagem passada para a classe de exceção dos pais usando o método super ():

publicstaticVoidMain (String [] args)
tentar
Exemplo ex = novo exemplo ("entrada inválida");
jogar ex;
catch (exemplo e)
Sistema.fora.println ("Exceção pega");
Sistema.fora.println (e.getMessage ());

A exceção definida pelo usuário é lançada:

Não é obrigatório que você passe uma string para uma classe pai usando o método super (), você também pode criar uma exceção definida pelo usuário chamando o construtor de um pai sem passar por qualquer parâmetro.

Exemplo 2

Neste exemplo, criaremos uma exceção definida pelo usuário sem imprimir nenhuma mensagem. Aqui, primeiro, criaremos um “UserDefinedException”Classe que se estende ao“Exceção" aula:

classe userDefinedException estende a exceção

No método main () do “Exemplo”Classe, lançaremos uma exceção criando um novo objeto da classe de exceção definida pelo usuário. No bloco de captura, chamaremos o método getMessage () para imprimir a mensagem; No entanto, ele não imprimirá nenhum, porque não passaremos nenhuma mensagem para ele:

publicClassexample
publicstaticVoidMain (String [] args)
tentar
thrownew userDefinedException ();
catch (userDefinedException ue)
Sistema.fora.println ("Exceção pega");
Sistema.fora.println (ue.getMessage ());


Saída

Vamos ver como podemos imprimir detalhes da exceção, em vez de especificá -lo no construtor da classe pai.

Método 2: Crie uma exceção definida pelo usuário usando o método ToString ()

Se você deseja imprimir alguns detalhes relacionados à exceção, use o “para sequenciar()”Método.

Sintaxe

Use a sintaxe fornecida para imprimir a mensagem na exceção definida pelo usuário:

public string tostring ()
return ("mensagem");

Exemplo

Aqui, criaremos um método ToString () na classe de exceção definida pelo usuário chamada “UserDefinedException“Ao estender -o com um“Exceção" aula. O método retornará a sequência que será impressa:

ClassUserDefinedExceptionExtendSexception
public string tostring ()
return ("A exceção ocorre");

No método main (), chamaremos a exceção usando o “lançar”Palavra-chave criando um novo objeto da classe definida pelo usuário em um bloco de tentativa:

publicClassexample
publicstaticVoidMain (String [] args)
tentar
thrownew userDefinedException ();
catch (userDefinedException ue)
Sistema.fora.println ("Exceção pega");
Sistema.fora.println (ue);


Saída

Compilamos todas as maneiras de criar uma exceção definida pelo usuário em Java.

Conclusão

Para criar uma exceção definida pelo usuário em Java, você primeiro estenderá a classe para a classe de exceção e depois usará dois métodos, GetMessage () e ToString () métodos. Esses métodos são usados ​​para imprimir as mensagens como uma exceção. O método getMessage () imprime a mensagem passada para o construtor da classe pai, enquanto o método tostring () retorna a string que será usada como uma mensagem de exceção. Neste manual, explicamos os métodos para criar uma exceção definida pelo usuário Java com exemplos.