Erweitern von Runnable

Status
Nicht offen für weitere Antworten.

DamienX

Aktives Mitglied
Hallo zusammen...

ich hab mal zu Testzwecken folgendes ausprobiert...

Code:
package interfaces;

public interface Service extends Runnable{
	
	public void shutdown();
	
}

und somit Runnable um die Methode shutdown erweitert. Nun implementieren
meine "Services" quasi Runnable + diese Methode.

Nun werden aber meine Threads aus dem erstellten Klassen nicht mehr weggestartet
wobei ich ein Problem mit der Klasse Thread vermute. Es gibt aber auch keine
Fehler da die Methoden der Interfaces ja implementiert sind.


Code:
Thread service = new Thread (services.get(serviceName));
service.setDaemon(true);
service.start();

... führt zu nichts... (services ist eine hashmap mit meinen Service Objekten!)

Hat jmd schon mal ähnliches versucht? Ist es wirklich nicht möglich eine
Klasse mit von Runnable abgeleiteten Interface auf normale Art zu starten?

Mit 2 implementierten Interfaces sprich ".... implements Runnable, Service"
gabs keinerlei Probleme... gefällt mir aber nicht.

Danke im voraus
Alex
 

SebiB90

Top Contributor
Wie erkennst das es "zu nichts führt" ?

das beispiel funktioniert:
Code:
public class Test {

  public static void main(String[] args) {
    ServiceTest st;
    Thread t = new Thread(st = new ServiceTest());
    t.start();
    st.shutdown();
  }
  
  public static interface Service extends Runnable {
    public void shutdown();
  }
  
  public static class ServiceTest implements Service {
    public void run() {
      System.out.println("run");
    }
    
    public void shutdown() {
      System.out.println("shut");
    }
  }
}
 
B

Beni

Gast
Dein Service ist ein Runnable, das reicht der Klasse Thread.

Aber vielleicht solltest du ...
... führt zu nichts... (services ist eine hashmap mit meinen Service Objekten!)
... etwas spezifizieren. Was sollte passieren? Die "run"-Methode wird ja wohl noch aufgerufen?

:!: Da "Thread" auch null als Argument annimmt: überprüfe bitte, dass da wirklich etwas in der Map steht (und ausgelesen wird).
 

DamienX

Aktives Mitglied
Hier war auch das Problem... da ging was bei den Namen der Service Klassen schief und
dadurch bekam ich falsche Werte... (die hab ich beim starten und beenden bearbeitet)

Aber die Information das ich Interfaces auch weitervererben kann und mir
um die Funktionalität trotzdem keine sorgen machen muss ist schon mal sehr hilfreich.
So kann man Interfaces schon kapseln.

Danke dafür!

Grüße Alex
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Erste Schritte Liste erweitern Allgemeine Java-Themen 11
Bluedaishi Zeile um zeichen erweitern Allgemeine Java-Themen 9
J Application mit PLugin erweitern Allgemeine Java-Themen 2
A Java Kenntnisse erweitern Allgemeine Java-Themen 5
E Java Programm mit Clients erweitern - Möglichkeiten? Allgemeine Java-Themen 2
B Hilfe!! spiel um Funktion des Selektierens erweitern (mit ASCII-Tabelle) Allgemeine Java-Themen 3
J build.xml erweitern Allgemeine Java-Themen 2
B Polibios Array erweitern Allgemeine Java-Themen 1
M XML-Datei "erweitern" mit Java Allgemeine Java-Themen 2
K Java Standardbib/reservierte Wörter erweitern Allgemeine Java-Themen 1
H Reg Exp Ausdruck erweitern Allgemeine Java-Themen 2
T Klassen Mehoden einer Klasse erweitern Allgemeine Java-Themen 5
M HashMaps: Wert erweitern Allgemeine Java-Themen 3
Rudolf JUnit4-Testklasse erweitern ohne zu vererben Allgemeine Java-Themen 6
J Input/Output Jar-Datei zur Laufzeit erweitern Allgemeine Java-Themen 13
nrg URL erweitern Allgemeine Java-Themen 2
T Klassen Fabrik (Factory) zur Laufzeit erweitern Allgemeine Java-Themen 5
GUI-Programmer JDK erweitern Allgemeine Java-Themen 42
S Ant erweitern..? Allgemeine Java-Themen 4
I Pattern zum Erweitern existierender Objekte Allgemeine Java-Themen 4
C Kontextmenü erweitern und mit Java Anwendung verknüfen. Allgemeine Java-Themen 3
W Erweitern einer Klasse mit Generics Allgemeine Java-Themen 8
M eigene Klasse durch Composition mit java.io.File erweitern Allgemeine Java-Themen 3
D Enums subclassen / erweitern? Allgemeine Java-Themen 2
J Können Programme sich selbst erweitern? Allgemeine Java-Themen 6
dunhillone Mittels Annotations Methoden "erweitern"? Allgemeine Java-Themen 11
S Objekt in Datei erweitern Allgemeine Java-Themen 16
P Funktion vorhanden - wie auf Transitivität erweitern? Allgemeine Java-Themen 6
N Classpath mit ClassLoader künstlich erweitern Allgemeine Java-Themen 2
M ArrayList erweitern - generics Allgemeine Java-Themen 4
P JComponenten (Button, JSlider, usw) erweitern Allgemeine Java-Themen 12
G Vector erweitern Allgemeine Java-Themen 4
G Tabellenzeilen erweitern Allgemeine Java-Themen 9
B desktop auf monitor erweitern Allgemeine Java-Themen 22
N Graphische Oberfläche dynamisch erweitern möglich? Allgemeine Java-Themen 4
D Programm um Klassen erweitern ohne neukompilieren? Allgemeine Java-Themen 5
C Probleme beim Erstellen eines runnable-jar files Allgemeine Java-Themen 1
A Runnable Jar gegen Bezahlung Allgemeine Java-Themen 3
Tobero Eclipse Runnable jar exportiert keine Textures? Allgemeine Java-Themen 12
L Eclipse Runnable Jar mit Dateien Allgemeine Java-Themen 8
S runnable jar file in Verbindung mit itext Allgemeine Java-Themen 3
M Image für PDF nicht verfügbar - Runnable .jar Allgemeine Java-Themen 3
J Runnable jar-File: Fehlermeldung Allgemeine Java-Themen 2
Wirago (runnable) JAR-File ausführen Allgemeine Java-Themen 6
A runnable jar läuft mur auf einem pc1 und nicht auf pc2 Allgemeine Java-Themen 6
K Auf Methoden der Runnable Klasse zugreifen Allgemeine Java-Themen 2
D Wozu runnable implementieren? Allgemeine Java-Themen 3
C Runnable Jars Allgemeine Java-Themen 2
J Threads und Runnable Allgemeine Java-Themen 2
K Runnable Jar mit Doppelklick ausführen Allgemeine Java-Themen 10
P Runnable Jar File über Windows ausführbar doch über Linux nicht Allgemeine Java-Themen 8
C Kann Methode nicht aus Klassenname implements Runnable nutzen Allgemeine Java-Themen 7
H Kann ein Runnable Objekt auf das Thread Objekt zugreifen? Allgemeine Java-Themen 4
R in einem neuen Runnable() eine lokale Varibale verwenden Allgemeine Java-Themen 2
V Aufruf von Klasse mit Runnable versteh ich nicht Allgemeine Java-Themen 8
N an die Klasse eines Runnable Threads kommen? Allgemeine Java-Themen 9

Ähnliche Java Themen

Neue Themen


Oben