Interface-Methode abrufen?

SimProtect

Aktives Mitglied
Hallo,

Wieder mal eine kurze - vermutlich doofe - Frage von mir.
Kann ich auf die Methoden eines noch nicht implementierten Interfaces zugreifen und wenn ja: wie?

Meine Agenten sollen eine optionale Schnittstelle für Algorithmen bieten, die quasi die Aufgabe der AI übernehmen. Hierbei ist mir nicht bekannt, was für Frameworks oder Algorithmen zum Einsatzkommen (wahrscheinlich sind evolutionäre Algorithmen - also Optimierungsverfahren). Somit kenne ich natürlich auch die Abhängigkeiten dieser Frameworks nicht, was Vererbung angeht.

Daher ist mein erster Ansatz eine Schnittstelle auf Interfacebasis zu bieten, da man von dieser ja beliebig viele implementieren kann, aber "nur" eine Oberklasse haben kann.
Ziel des Ganzen ist, dass alle, die in irgendeiner Form einen Algorithmus da rein basteln, auf alle Fälle die wesentlichen Methoden implementieren, die die eigentliche Simulation benötigt.

Ein vereinfachtes Beispiel:
Die Methode Agent.action() werde vom Scheduler der Simulationsumgebung aufgerufen und solle vom Nutzer implementiert werden. Ihr Inhalt: Die Handlungen des jeweiligen Agent - die kann ich schlecht vorwegnehmen, da ich natürlich nicht weiß, was anderen so alles einfällt.

Demnach wäre mein erster Ansatz gewesen:
Java:
public interface InterfaceDings{
   public void action();
}

Jetzt möchte ich natürlich in meinen Klassen irgendwie diese Methode aufrufen. Also z.B. (was offensichtlich nicht geht):

Java:
public void automatedActionCall(){
   InterfaceDings.action();
}

Ich habe zuvor leider nie mit Interfaces gearbeitet, da Vererbungen völlig ausgereicht haben und als vor drei Jahren Interfaces behandelt wurden, habe ich schlicht und ergreifend nicht zugehört -.-

Kann mir da einer kurz weiterhelfen?
 

Adelhorst

Mitglied
Hallo,
Interface-Methoden kann man so nicht aufrufen.
In der Interface-Klasse selbst legst nur fest welche Methoden eine andere Klasse mal haben soll.
Mit "public class Agent implements InterfaceDings .....
legst du z.B. fest, dass der Agent ALLE Methoden der Interface-Klasse 'InterfaceDings' implementieren muss. Der Compiler meckert schon, wenn in der Agent-Klasse nicht ALLE Interface-Methoden vorhanden sind.
Eine Interface-Klasse ist eine abstrakte Klasse, man kann keine Instanzen davon erzeugen. Von daher kann man auch keine Methoden davon aufrufen.

Guido Krüger - JAVA 1.1 lernen - Kapitel 7 Interfaces
 
Zuletzt bearbeitet:

SimProtect

Aktives Mitglied
Die Funktion des Interfaces kannte ich natürlich (also dass der Compiler meckert). Ich hatte nur tatsächlich noch nie ein Interfaces selbst geschrieben oO - auch abstrakte Klassen sind ein mir bekanntes Konstrukt - die nutze ich recht häufig (abstrakte Oberklasse) und alle Objekte dieses Typs anzusprechen. (ich weiß ja leider häufig nicht, welche Unterklasse andere Entwickler noch basteln wollen).

Ich hatte hier aber schon wieder zu kompliziert gedacht - eine normale Klasse reicht als Schnittstelle auch. Andere können ja die Methode dieser Klasse callen und frei implementieren. Dann kam es eigentlich nicht zur Überschneidung der Oberklassen kommen. Der User kann die also selbst "erweitern"...
Manchmal hat man echt ein Brett vor dem Schädel.

Die "kann-alles-Schnittstelle" dürfte etwas über meinen Horizont hinausgehen :D

Danke auf jeden Fall die geduldige und schnelle Antwort :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Interface Methode wird ungewollt in der Subklasse überschrieben Java Basics - Anfänger-Themen 5
U Beispiel Methode size() vom "Collection"-interface... Wie kann man sichtbar machen, was die Methode unter der Haube macht? Java Basics - Anfänger-Themen 8
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7
J Interface methode aufrufen (interface parameter) Java Basics - Anfänger-Themen 7
T Interface Methode im Interface mit mehreren Parametern Java Basics - Anfänger-Themen 10
M Maven Main-Methode Interface und Klasse Java Basics - Anfänger-Themen 2
A Interface Abstrakte Interface Methode kann nicht benutzt werden Java Basics - Anfänger-Themen 10
G Interface java.util.Comparator: Wieso muss nur die Methode compare() implementiert werden Java Basics - Anfänger-Themen 2
S Generische Methode soll Objekte als Parameter erlauben die bestimmtes Interface implementieren^ Java Basics - Anfänger-Themen 9
B non static interface Methode Java Basics - Anfänger-Themen 16
H Interface clone-Methode in Interface Java Basics - Anfänger-Themen 6
B Abstrakte Methode vs. Interface Java Basics - Anfänger-Themen 2
S Interface-Methode Java Basics - Anfänger-Themen 8
N Mehrfach von Klassen benutze Methode in Interface auslagern? Java Basics - Anfänger-Themen 3
G Interface mit fertiger Methode Java Basics - Anfänger-Themen 38
J Methode mit gleichem Namen in verebter Klasse und Interface Java Basics - Anfänger-Themen 5
I No Jakarta Enterprise Beans found with interface ignorieren? Java Basics - Anfänger-Themen 2
I No EJB found with interface of type Java Basics - Anfänger-Themen 12
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
Say Abstrakt oder Interface Java Basics - Anfänger-Themen 3
Say public/default Interface Java Basics - Anfänger-Themen 9
W Intuitive interface für Komponenten Java Basics - Anfänger-Themen 4
I Browser integriert in Desktop Applikation - Webcam interface not found Java Basics - Anfänger-Themen 26
J Interface Comparable<T> Java Basics - Anfänger-Themen 10
M Interface oder Vererbung? Java Basics - Anfänger-Themen 12
D Interface Verständisfrage Java Basics - Anfänger-Themen 8
U Interface | constructor injection Java Basics - Anfänger-Themen 5
J Interface Interface korrekt implementieren Java Basics - Anfänger-Themen 5
A Methoden Vererbung und Interface Java Basics - Anfänger-Themen 14
T Interface Map und Map.Entry Java Basics - Anfänger-Themen 4
U Interface als PAramter (Vergleich) und ein Error Java Basics - Anfänger-Themen 9
I Interface von einer EJB Klasse, um Code zu reduzieren Java Basics - Anfänger-Themen 1
M Interface als Parameter einer Klasse Java Basics - Anfänger-Themen 8
I JSON und Interface Java Basics - Anfänger-Themen 3
Kotelettklopfer Kleines Testprogramm mit Interface und einer Usereingabe Java Basics - Anfänger-Themen 16
CptK Interface Functional interface mit mehreren Methoden Java Basics - Anfänger-Themen 6
L Interface & Comparable Java Basics - Anfänger-Themen 15
T Interface Java Basics - Anfänger-Themen 0
CptK Generics: Klassen die Interface implementieren, aber selbst nicht das Interface sind Java Basics - Anfänger-Themen 8
B Interface List - Objekt übergeben? Einzelnes Objekt geht, aber Liste nicht? Java Basics - Anfänger-Themen 4
B Best Practice Unschlüssig ob Vererbung oder Interface Java Basics - Anfänger-Themen 2
E abstrakte Klasse implementiert ein Interface Java Basics - Anfänger-Themen 40
C Interface und Konstruktor Java Basics - Anfänger-Themen 1
S Interface Equals und hashCode Java Basics - Anfänger-Themen 16
A Generische Klassen/Interface Java Basics - Anfänger-Themen 1
C Methoden-Parameter ist Interface Java Basics - Anfänger-Themen 5
B Collections Objektreferenz-ID in der Ausgabe (Comparator Interface) Java Basics - Anfänger-Themen 2
A Interface Kuddelmuddel Java Basics - Anfänger-Themen 4
C Collections List über Interface zugreifen Java Basics - Anfänger-Themen 32
S Interface Interface und seine Implementierung Java Basics - Anfänger-Themen 5
H abstract und interface Java Basics - Anfänger-Themen 4
F Interface Casting Java Basics - Anfänger-Themen 13
C Telefonliste mit interface implementieren Java Basics - Anfänger-Themen 30
L Klassen Kann eine Unterklasse einer abstrakten Klasse ein Interface implementieren? Java Basics - Anfänger-Themen 2
H Interface Java Basics - Anfänger-Themen 2
R Quicksort mit Interface Comparable Java Basics - Anfänger-Themen 6
B Interface vs Abstract Java Basics - Anfänger-Themen 2
B Objekte zählen/ Vererbung/ Kopplung/ Interface/ Abstract Class Java Basics - Anfänger-Themen 5
pkm Interface Funktionales Interface lässt sich nicht implementieren. Java Basics - Anfänger-Themen 2
Kornblume Comparable Interface für Objektvergleiche nutzen Java Basics - Anfänger-Themen 15
I Comparator<T> Interface als Methodenparamter Java Basics - Anfänger-Themen 4
J OOP Wie sollte ich das organisieren (Abstract? Interface?) Java Basics - Anfänger-Themen 33
J Java Interface/abstrakte Klassen Java Basics - Anfänger-Themen 2
E Interface nur von abstrakter Klasse implementierbar?! Java Basics - Anfänger-Themen 1
J Vererbung Abstrake Klasse <-> Interface Java Basics - Anfänger-Themen 5
C Interface als Datentyp eines Attributes? Java Basics - Anfänger-Themen 6
U Interface Bedeutung "Code to an interface rather than to an implementation." Java Basics - Anfänger-Themen 4
M Erste Schritte Prüfungsbeispiel: Interface / abstrakte Klassen Java Basics - Anfänger-Themen 8
R Interface Eigene Objekte in Listen sortieren mit Interface Comparable Java Basics - Anfänger-Themen 5
D Interface Amazon Skill Kit, Interface but method in other class? Java Basics - Anfänger-Themen 3
J Compiler-Fehler class interface or enum expected Java Basics - Anfänger-Themen 1
T Vererbung und interface. Java Basics - Anfänger-Themen 1
N Interface Interface Erstellung Java Basics - Anfänger-Themen 3
kilopack15 Beziehung Interface - (abstrakte) Klasse -Unterklasse Java Basics - Anfänger-Themen 3
C Interface Fragen zum Interface Java Basics - Anfänger-Themen 7
Azazel Ist die abstract class das selbe wie ein interface ? Java Basics - Anfänger-Themen 33
K Interface: wie damit arbeiten Java Basics - Anfänger-Themen 4
lBlKha0s Fehlermeldung : class interface or enum expected Java Basics - Anfänger-Themen 9
T error: class, interface, or enum expected Java Basics - Anfänger-Themen 5
T Vererbung Interface Java Basics - Anfänger-Themen 5
F Interface aus anderem Package nutzen Java Basics - Anfänger-Themen 10
N Interface Daten einem Implementierten Interface zuweisen Java Basics - Anfänger-Themen 37
B Erste Schritte Wie definiere ich in Java ein Interface? Java Basics - Anfänger-Themen 6
L OOP Interface Prinzip? Java Basics - Anfänger-Themen 6
K Nutzung einer Klasse die das Iterator-Interface implementiert Java Basics - Anfänger-Themen 0
K Iterator-Interface implementieren mit Exception Handlung Java Basics - Anfänger-Themen 1
J Innerhalb Interfacemethode: Interface als Attribut Java Basics - Anfänger-Themen 2
A Frage zu Interface Java Basics - Anfänger-Themen 16
J Interface Java Basics - Anfänger-Themen 3
W Interface Java Basics - Anfänger-Themen 1
L Compiler-Fehler error: class, interface or enum expected Java Basics - Anfänger-Themen 2
N Generics Vererbung Wildcard Interface Java Basics - Anfänger-Themen 8
Shams Kann man von einem Interface aus auf die dieses implementierende Klasse zugreifen? Java Basics - Anfänger-Themen 4
J Frage zu dem Thema interface Java Basics - Anfänger-Themen 5
S Generics und Comparable Interface Java Basics - Anfänger-Themen 5
A Klasse,Vererbung,Interface,Singleton,Thread Java Basics - Anfänger-Themen 5
P Vererbung Klasse erbt von abstrakter Klasse implementiert Interface Java Basics - Anfänger-Themen 2
M Konstanten in einem Interface definieren Java Basics - Anfänger-Themen 1
P interface Java Basics - Anfänger-Themen 1
F eigenes Listener Pattern mit Interface Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben