Java 8, wie kann man anhand des Wertes einer Variablen bestimmen, wie ein Code funktioniert?
Ratewio
Java 8, wie kann man anhand des Wertes einer Variablen bestimmen, wie ein Code funktioniert?
Stellen Sie sich vor, wir haben ein Programm, das die Konfiguration beim Start liest und die Parameter in sich selbst einstellt. Wir haben eine boolesche Variable in der Konfiguration, abhängig von deren Wert das Programm bestimmt, welche Funktion verwendet werden soll. Dies kann durch eine abstrakte Klasse und zwei Klassen gelöst werden, die sie implementieren und eine Funktion in ihnen aufrufen, aber vielleicht gibt es einen eleganteren Ansatz?
Antworten:
Alex
Habe das vor kurzem getrunken. Sie erstellen eine Schnittstelle mit der init-Methode, die Sie in zwei Erben implementieren, die wiederum von Konstruktoren auf Instanzen aufgerufen werden. Sie legen eine statische Klasse an, die basierend auf einer Variablen aus der Konfiguration eine Instanz für Sie initialisiert und als Schnittstelle zurückgibt. Sie arbeiten mit einer Instanz einer Schnittstelle statt mit einer Klasse. Sie abstrahieren also von der Implementierung. Die Bedingung wird einmalig bei der Initialisierung der Schnittstelleninstanz erfüllt. Wenn für die gesamte Anwendungsdauer nur 1 Kopie der Schnittstelle von Interesse ist. Sie legen ein "Singleton" ab und fügen eine Initialisierung hinzu. Als Ergebnis erhalten Sie überall in Ihrer Anwendung eine Instanz der Schnittstelle ...