Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Java extra Thread

Mitglied: Saschaaaaa

Saschaaaaa (Level 1) - Jetzt verbinden

21.05.2016, aktualisiert 19:57 Uhr, 1254 Aufrufe, 5 Kommentare

Hallo Community,

meine ersten Versuche mit Java bringen mich an gewisse Schwierigkeiten.

Ich habe diesen Code:
01.
public class test
02.
{
03.
	Thread t;
04.
	public static void main(String[] args){
05.
		int eingabe;
06.
		t = new MyThread();
07.
		t.start();
08.
		if(eingabe == 2){
09.
			//mach
10.
		}else{
11.
			//mach
12.
		}
13.
	}
14.
}
15.
class MyThread extends Thread{
16.
	public
17.
	MyThread(){
18.
	super();
19.
	}
20.
	public Integer run(java.awt.event.KeyEvent evt) {
21.
		int eingabe = evt.getKeyCode();
22.
		return eingabe;
23.
	}
24.
}
Das bringt mir diesen Fehler:
01.
test.java:8: error: non-static variable t cannot be referenced from a static context
02.
                t = new MyThread();
03.
                ^
04.
test.java:9: error: non-static variable t cannot be referenced from a static context
05.
                t.start();
06.
                ^
07.
3 errors
Wie krieg ich das static <> non-static Problem hin?

Ich arbeite nicht in Eclipse, nur Notepad.

Danke schonmal für ein Paar Tipps

Grüße
Sascha
Mitglied: MisterExpulso
22.05.2016 um 12:18 Uhr
Zwei Möglichkeiten:
Entweder die Deklaration der Variable t in die Main-Methode verlagern oder das Wort static vor die Deklaration der Variable t schreiben.

Gruß,
Marius
Bitte warten ..
Mitglied: Saschaaaaa
22.05.2016 um 15:36 Uhr
Okay Danke damit sind die Fehler schonmal weg.
Allerdings passt jetzt irgendwas wieder nicht:

01.
import java.util.concurrent.TimeUnit;
02.
public class test
03.
{
04.
	static Thread t;
05.
	public static void main(String[] args){
06.
		int eingabe = 88;
07.
		t = new MyThread();
08.
		t.start();
09.
		try{
10.
			TimeUnit.MILLISECONDS.sleep(3000);
11.
		}catch(InterruptedException e){}
12.
		if(eingabe == 2){
13.
			System.out.print("if2");
14.
		}else{
15.
			System.out.print(eingabe);
16.
		}
17.
	}
18.
}
19.
class MyThread extends Thread{
20.
	public
21.
	MyThread(){
22.
	super();
23.
	}
24.
	public Integer run(java.awt.event.KeyEvent evt) {
25.
		int eingabe = 11;
26.
		eingabe = evt.getKeyCode();
27.
		return eingabe;
28.
	}
29.
}
Hier ist der Output 88.
Wieso?
Bitte warten ..
Mitglied: MisterExpulso
22.05.2016 um 15:55 Uhr
In Zeile 6 wird der Wert von eingabe auf 88 gesetzt. Danach wird er nie geändert. Anschließend wird der else-Zweig (Zeile 14) ausgeführt.
Bitte warten ..
Mitglied: Saschaaaaa
22.05.2016 um 16:55 Uhr
Geändert soll er ja in dem neuen Thread werden. Das ist genau das was nicht funktioniert )-:
Bitte warten ..
Mitglied: MisterExpulso
23.05.2016 um 23:27 Uhr
Nee das kann so nicht funktionieren, da niemals dieselbe Variable verändert wird.
Dürfte ich denn mal erfahren, was der Hintergrund dieses Projektes ist?
Geht es darum etwas einzulesen oder geht es um die Beschäftigung mit Threads?
Bitte warten ..
Ähnliche Inhalte
Grafikkarten & Monitore
Server mit extra Graphikkarte
gelöst Frage von EuroPCGrafikkarten & Monitore23 Kommentare

Moin, ich habe hier ein Angebot unseres IT- Dinstleisters über einen Server mit Xeon E2176G Prozessor. Laut Intel hat ...

Visual Studio
Eigener Prozess ist schneller als Thread
Frage von Aicher1998Visual Studio13 Kommentare

Hallo Ich muss zu Demonstrationszwecken sehr viele Post-Requests in kürzester Zeit an meinen Server machen (nein, kein DoS, mein ...

Router & Routing
DSL-Router mit extra Routing
Frage von weizecolaRouter & Routing2 Kommentare

Unsere Firma hat ein Nachbargebäude bislang erfolgreich per Richtfunk-Strecke als Gebäudekopplung an das LAN, bzw. unsere Telekom-Standleitung und die ...

SEO

Extra Beschreibung für unterschiedliche Artikelvarianten

Frage von freshman2017SEO2 Kommentare

Hallo Ihr, ich frage mich gerade, wie sinnvoll es seitens GOOGLE es sein kann, dass Artikelvarianten unterschiedliche Beschreibungen im ...

Neue Wissensbeiträge
Linux Desktop

Warum Linux in einer vernetzten Welt einfach keinen Komfort bietet!

Tipp von Snowbird vor 12 StundenLinux Desktop8 Kommentare

Ein interessanter Einblick warum Linux nichts für Geräteübergreifende Arbeit ist :)

Humor (lol)
Zuviel Speicher ist ungesund. :-)
Tipp von Lochkartenstanzer vor 1 TagHumor (lol)13 Kommentare

Moin Kollegen, Heute hatte ich ein ungewöhnliches Aha-Erlebnis: Über das Wochenende habe ich einen einen 6 Jahre alten Bare-Metal ...

Windows Update

KB4517297 verfügbar, behebt Fehler in VB6 VBA VBScript

Information von sabines vor 1 TagWindows Update

Das Update behebt mögliche Fehler in VB6, VBA und VBScript, die durch das Update KB4512486 vom August entstanden sind. ...

Viren und Trojaner

Staatstrojaner soll auch per Einbruch installiert werden können

Information von transocean vor 2 TagenViren und Trojaner5 Kommentare

Moin, Bundesinnenminister Horst Seehofer will dem Verfassungsschutz Wohnungseinbrüche erlauben, um den geplanten Staatstrojaner zu installieren. Gruß Uwe

Heiß diskutierte Inhalte
Hyper-V
Bei Neuaufbau auf Core-Server setzen?
gelöst Frage von dertowaHyper-V33 Kommentare

Hallo zusammen, ich habe vor einigen Monaten die Verantwortung für eine EDV-Landschaft übernommen die seit Jahren von einem Dienstleister ...

Router & Routing
VPN Verbindung zur Fritzbox über Speedport
gelöst Frage von SchwabenlandRouter & Routing13 Kommentare

Hallo! Ich bin gerade im Urlaub an der Nordsee :-) In unserem Ferienhaus haben wir WLAN, das durch einen ...

Humor (lol)
Zuviel Speicher ist ungesund. :-)
Tipp von LochkartenstanzerHumor (lol)12 Kommentare

Moin Kollegen, Heute hatte ich ein ungewöhnliches Aha-Erlebnis: Über das Wochenende habe ich einen einen 6 Jahre alten Bare-Metal ...

Batch & Shell
PowerShell - Text an HTMLbody übergeben mit UTF-8 Kodierung
Frage von Pat.batBatch & Shell12 Kommentare

Hallo zusammen, ich stoße momentan auf folgendes Problem. Ich möchte mit meinem Skript E-Mails versenden. Text und Signatur samt ...