Guave - Voraussetzungsklasse

Voraussetzungen bieten statische Methoden, um zu überprüfen, ob eine Methode oder ein Konstruktor mit einem geeigneten Parameter aufgerufen wird oder nicht. Es prüft die Voraussetzungen. Seine Methoden lösen bei einem Fehler eine IllegalArgumentException aus.

Klassenerklärung

Es folgt die Erklärung für com.google.common.base.Preconditions Klasse -

@GwtCompatible
public final class Preconditions
   extends Object

Klassenmethoden

Sr.Nr. Methode & Beschreibung
1

static void checkArgument(boolean expression)

Stellt die Richtigkeit eines Ausdrucks sicher, der einen oder mehrere Parameter für die aufrufende Methode enthält.

2

static void checkArgument(boolean expression, Object errorMessage)

Stellt die Richtigkeit eines Ausdrucks sicher, der einen oder mehrere Parameter für die aufrufende Methode enthält.

3

static void checkArgument(boolean expression, String errorMessageTemplate, Object. errorMessageArgs)

Stellt die Richtigkeit eines Ausdrucks sicher, der einen oder mehrere Parameter für die aufrufende Methode enthält.

4

static int checkElementIndex(int index, int size)

Stellt sicher, dass der Index ein gültiges Element in einem Array, einer Liste oder einer Zeichenfolge der Größe angibt.

5

static int checkElementIndex(int index, int size, String desc)

Stellt sicher, dass der Index ein gültiges Element in einem Array, einer Liste oder einer Zeichenfolge mit der Größe angibt.

6

static <T> T checkNotNull(T reference)

Stellt sicher, dass eine Objektreferenz, die als Parameter an die aufrufende Methode übergeben wird, nicht null ist.

7

static <T> T checkNotNull(T reference, Object errorMessage)

Stellt sicher, dass eine Objektreferenz, die als Parameter an die aufrufende Methode übergeben wird, nicht null ist.

8

static <T> T checkNotNull(T reference, String errorMessageTemplate, Object... errorMessageArgs)

Stellt sicher, dass eine Objektreferenz, die als Parameter an die aufrufende Methode übergeben wird, nicht null ist.

9

static int checkPositionIndex(int index, int size)

Stellt sicher, dass der Index eine gültige Position in einem Array, einer Liste oder einer Zeichenfolge mit Größe angibt.

10

static int checkPositionIndex(int index, int size, String desc)

Stellt sicher, dass der Index eine gültige Position in einem Array, einer Liste oder einer Zeichenfolge mit Größe angibt.

11

static void checkPositionIndexes(int start, int end, int size)

Stellt sicher, dass Anfang und Ende eine gültige Position in einem Array, einer Liste oder einer Zeichenfolge der Größe angeben und in der richtigen Reihenfolge sind.

12

static void checkState(boolean expression)

Stellt sicher, dass ein Ausdruck den Status der aufrufenden Instanz enthält, jedoch keine Parameter für die aufrufende Methode enthält.

13

static void checkState(boolean expression, Object errorMessage)

Stellt sicher, dass ein Ausdruck den Status der aufrufenden Instanz enthält, jedoch keine Parameter für die aufrufende Methode enthält.

14

static void checkState(boolean expression, String errorMessageTemplate, Object... errorMessageArgs)

Stellt sicher, dass ein Ausdruck den Status der aufrufenden Instanz enthält, jedoch keine Parameter für die aufrufende Methode enthält.

Vererbte Methoden

Diese Klasse erbt Methoden von der folgenden Klasse:

  • java.lang.Object

Beispiel einer Voraussetzungsklasse

Erstellen Sie das folgende Java-Programm mit einem beliebigen Editor Ihrer Wahl C:/> Guava.

GuavaTester.java

import com.google.common.base.Preconditions;

public class GuavaTester {

   public static void main(String args[]) {
      GuavaTester guavaTester = new GuavaTester();

      try {
         System.out.println(guavaTester.sqrt(-3.0));
      } catch(IllegalArgumentException e) {
         System.out.println(e.getMessage());
      }

      try {
         System.out.println(guavaTester.sum(null,3));
      } catch(NullPointerException e) {
         System.out.println(e.getMessage());
      }

      try {
         System.out.println(guavaTester.getValue(6));
      } catch(IndexOutOfBoundsException e) {
         System.out.println(e.getMessage());
      }
   }

   public double sqrt(double input) throws IllegalArgumentException {
      Preconditions.checkArgument(input > 0.0,
         "Illegal Argument passed: Negative value %s.", input);
      return Math.sqrt(input);
   }

   public int sum(Integer a, Integer b) {
      a = Preconditions.checkNotNull(a, "Illegal Argument passed: First parameter is Null.");
      b = Preconditions.checkNotNull(b, "Illegal Argument passed: Second parameter is Null.");

      return a+b;
   }

   public int getValue(int input) {
      int[] data = {1,2,3,4,5};
      Preconditions.checkElementIndex(input,data.length, "Illegal Argument passed: Invalid index.");
      return 0;
   }
}

Überprüfen Sie das Ergebnis

Kompilieren Sie die Klasse mit javac Compiler wie folgt -

C:\Guava>javac GuavaTester.java

Führen Sie nun den GuavaTester aus, um das Ergebnis anzuzeigen.

C:\Guava>java GuavaTester

Siehe das Ergebnis.

Illegal Argument passed: Negative value -3.0.
Illegal Argument passed: First parameter is Null.
Illegal Argument passed: Invalid index. (6) must be less than size (5)