Suche im Forum:
Suchen


Autor Nachricht
Beitrag12.02.2012 um 00:08 (UTC)    
Titel: java applet

moin
ich versuche ein kleines spiel als java applet zu programmieren. dazu möchte ich einen neuen thread erstellen der sich nur um das zeichnen kümmert. google hat mir gesagt das ich die funktion run überschreiben muss das verstehe ich aber nicht.
Beitrag12.02.2012 um 01:42 (UTC)    
Titel:

Hallo,

wenn dein Java so aussieht, wie obiger post, dann musst du das Applet erstmal nach Java übersetzen. Rolling Eyes

Überschreiben bedeutet die macht des Polymorphismus zu nutzen. Wenn du das nicht Verstehst, würde ich mir das mit dem Multithreading nochmal überlegen, dein Spiel wäre zum Scheitern verurteilt.

Letztlich machst du aber nichts anderes als einfach die Methode neu zu Implementieren.


Um in Java einen Thread zu erzeugen hast du 2 Möglichkeiten.

1. Du lässt die entsprechende Klasse von der Klasse Thread erben. Diese Klasse erbt dann die Methode start, welche du aufrufen musst um den Thread laufen zu lassen.
Die Klasse Thread hält eine Methode run bereit, welche beim Aufruf von start implizit aufgerufen wird. Run enthält letztlich den Code, welcher parallel ausgeführt werden soll.
Da die run Methode in der Klasse Thread nur ein leeres Gerüst ist (Thread implementiert das Interface Runnable siehe zweitens) und du ja deinen eigenen Code ausführen möchtest, musst du run in deiner abgeleiteten Klasse überschreiben.

2. Deine Klasse Implementiert das Interface Runnable selbst. Das Interface schreibt auch hier wieder die Methode run vor, welche du einfach Implementieren musst. Um den Thread zu starten musst du dann ein Thread Objekt erzeugen und dem Konstruktor eine Referenz auf ein Objekt der Klasse, welche das runnable Interface Implementiert übergeben. Danach musst du auch hier explizit die start Methode aufrufen.


Ich empfehle dir Methode 2. Dadurch erreichst du eine lose Kopplung und eine Hohe Flexibilität. Ein Nachteil von Methode 1 ist auch, dass du damit die Vererbung unnötigerweise bereits aufgebraucht hättest.

Beachte: Unter Umständen musst du dir auch Gedanken über die Synchronisation deiner Threads machen.
______________
mfg
o-4-n

"If you’re incompetent, you can’t know you’re incompetent." - [David Dunning]

*** Die Suchfunktion ist KEINE tödliche Krankheit! ***

Eventplanung, Equipment, Zeltverleih, Catering
Beiträge der letzten Zeit anzeigen:   


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de