[JAVA] Selbst gemachte Ausnahme

Versuchen Sie eine Ausnahme zu machen

WahhoiException.java


package exception;

/**
 * <b>Wow Ausnahme.<b>
 *
 * @author me
 *
 */
public class WahhoiException extends Exception{

	//Vermeidung von Warnungen
	private static final long serialVersionUID = 1L;

	/**
	 * Constructor.
	 *
	 * @param msg Ausgangsnachricht
	 */
	public WahhoiException (String msg) {
		super(msg);
	}
}

PracticeException1.java


package test;

import java.util.Optional;

import exception.WahhoiException;

/**
 * Test.
 *
 * @author me
 *
 */
public class PracticeException1 {

	/**
	 * main
	 *
	 * @param args
	 */
	public static void main(String[] args) {
		try {
			run(Optional.ofNullable(null));
		} catch (WahhoiException e) {
			System.out.println(e.getMessage());
		}
	}

	/**
	 *Übungsmethode.
	 *
	 * @param opt Ich kenne den Wert von Optional nicht
	 * @löst eine WahhoiException aus Wenn der Eingabewert null ist
	 */
	private static void run(Optional<Object> opt) throws WahhoiException {
		if (opt.isPresent()) {
			System.out.println("Beeindruckend");
		} else {
			throw new WahhoiException("wahhoi");
		}
	}

}

So können Sie eine originelle Ausnahme machen Es mag keinen Sinn ergeben, weil es bereits existiert, aber ich habe es ein wenig gemacht!

Zum Beispiel so

NoRecordException.java


package exception;

/**
 * <b>Ausnahme, die auftritt, wenn die Anzahl der Suchergebnisse 0 ist.</b>
 *
 * @author me
 *
 */
public class NoRecordException extends Exception{

	//Vermeidung von Warnungen
	private static final long serialVersionUID = 1L;

	/**
	 * Constructor.
	 *
	 * @param msg Ausgangsnachricht
	 */
	public NoRecordException(String msg) {
		super(msg);
	}
}

Model1.java


package model;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;

import exception.NoRecordException;

/**
 * <b>Model1.</b>
 *
 * @author me
 *
 */
public class Model1 {

	/**
	 *Suche nach Primärschlüssel.<p>
	 *Suchen Sie eine fiktive Tabelle mit dem Primärschlüssel,Geben Sie die entsprechenden Daten in einer Liste zurück.<p>
	 *Stellen Sie sicher, dass Sie eine Ausnahme erhalten.
	 *
	 * @param id Primärschlüssel
	 * @return Liste der anwendbaren Daten
	 * @löst NoRecordException aus Wenn der Zieldatensatz nicht vorhanden ist
	 */
	public List<Model1> find(String id) throws NoRecordException{
		List<Model1> modelList = Collections.synchronizedList(new ArrayList<Model1>());
		// SELECT * FROM table;
		if (!modelList.isEmpty()) {
			return modelList;
		} else {
			throw new NoRecordException("Der Zieldatensatz war nicht vorhanden.");
		}
	}

	/** ID */
	private Integer id;
	/**Name*/
	private String name;
	/**Name des Erstellers*/
	private String createdBy;
	/**Erstellungsdatum und -zeit*/
	private Date createdAt;
	/**Name des Updaters*/
	private String updatedBy;
	/**Datum und Uhrzeit aktualisieren*/
	private Date updatedAt;

	public Integer getId() {
		return id;
	}
	public void setId(Integer id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getCreatedBy() {
		return createdBy;
	}
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}
	public Date getCreatedAt() {
		return createdAt;
	}
	public void setCreatedAt(Date createdAt) {
		this.createdAt = createdAt;
	}
	public String getUpdatedBy() {
		return updatedBy;
	}
	public void setUpdatedBy(String updatedBy) {
		this.updatedBy = updatedBy;
	}
	public Date getUpdatedAt() {
		return updatedAt;
	}
	public void setUpdatedAt(Date updatedAt) {
		this.updatedAt = updatedAt;
	}

}

Durchsuchen Sie die Tabelle nach Daten und machen Sie eine Ausnahme, wenn 0 Datensätze vorhanden sind.

PracticeException2.java


package test;

import java.util.List;

import exception.NoRecordException;
import model.Model1;

/**
 * Test.
 *
 * @author me
 *
 */
public class PracticeException2 {

	/** Model1 */
	private static Model1 model1 = new Model1();

	/**
	 * main
	 *
	 * @param args
	 */
	public static void main(String[] args) {
		System.out.println(run());
	}

	/**
	 *Suche fiktive Tabelle,Holen Sie sich den ersten Datensatz.<p>
	 *Wenn der entsprechende Datensatz nicht vorhanden ist,{@code null}Rückkehr.<p>
	 *
	 * @Suchergebnisse zurückgeben
	 */
	private static Model1 run() {

		try {

			//Durchsuchen Sie die Tabelle,Holen Sie sich den ersten
			List<Model1> list = model1.find("id");
			return list.stream().findFirst().get();

		} catch (NoRecordException e) {

			//Wenn der entsprechende Datensatz nicht vorhanden ist
			return null;

		}

	}

}

Nun, es ist alltäglich w In diesem Fall handelt es sich um ein findFirst-Problem, daher hat es dieselbe Bedeutung wie NoSuchElementException. Es ist eine fast bedeutungslose Implementierung ... w

Ich frage mich, ob Sie nicht oft Ausnahmen machen, aber welche Fälle sind schließlich nicht gut? Es ist sehr wichtig, weil es Sie gut informiert.

Ich werde vergessen, wenn ich es nicht benutze, also möchte ich es immer mehr benutzen

Aber es scheint seltener gemacht zu werden ...

Recommended Posts

Selbst gemachte Ausnahme
Ausnahme
Ausnahmebehandlung
Ausnahmebehandlung Ausnahme
Bohren (selbst gemacht)
Java-Ausnahmebehandlung?
Informationen zur Ausnahmebehandlung
Behandlung von Ruby-Ausnahmen
Ausnahmeschaltmethode
Ruby-Ausnahmebehandlung
[Java] Ausnahmebehandlung
☾ Java / Ausnahmebehandlung
Informationen zur Behandlung von Java-Ausnahmen
Behandlung von Java-Ausnahmen