NullPointerException | Thread

Status
Nicht offen für weitere Antworten.

b0unc3

Bekanntes Mitglied
hi leudz, ich bekomm an kommentierter stelle eine NullPointerException aber leider weiß ich nicht warum :(

Code:
import java.net.*;
import java.io.*;

public class GetNetworkIps {
	public static void main(String[] args) throws Exception {
		String startIp;
		String ip2;
		PingThread ping[] = null;
		
		InetAddress ip = null;
		
		BufferedReader r = new
		BufferedReader(new InputStreamReader(System.in));
		
		System.out.println("Bitte Ip eingeben: (192.168.1. << letze stelle frei lassen!!)");
		startIp = r.readLine();
		
		System.out.println();
		
		System.out.println("Timeout: ");
		String t = r.readLine();
		
		for (int i = 1; i <= 255; i++) {
			ip2 = startIp + i;
			ip = InetAddress.getByName(ip2);
			ping[i] = new PingThread(ip);    // NullPointerException
		}
	}
}

Hier ist der PingThread

Code:
import java.net.InetAddress;

class PingThread extends Thread {
	InetAddress ip;
	PingThread(InetAddress ip) {
		this.ip = ip;
	}
	
	public void run() {
		try {
			if (ip.isReachable( 2000 )) {
				System.out.println(ip);
			} else System.out.println("<><>" + ip);
		} catch (Exception ex) {
			System.err.println(ex.getMessage());
		}
	}
}
 

hupfdule

Top Contributor
Code:
PingThread ping[] = null;
...
ping[i] = new PingThread(ip);

Deswegen. Dein Array ist null. Das musst du zuvor initialisieren. Da du offenbar 255 Threads haben willst, die du darin speicherst, sollte dieses dann also auch 255 Stellen groß sein.

BTW: Warum fängst du die Schleife bei 1 an, statt bei 0? In Arrays (und quasi eigentlich immer in Programmiersprachen) beginnt die Zählung bei 0. Du würdest also die erste Stelle des Arrays nicht benutzen.
 

b0unc3

Bekanntes Mitglied
ok danke die exception is weg.. aber sobald ich das timeout eingegeben habe, endet das programm einfach so :'( ...

auch wenn ich das timeout auf 4000 setze...

ich fang bei eins an, weil ich die ip (Bsp.: 192.168.1.0) nicht anpingen möchte
 

hupfdule

Top Contributor
b0unc3 hat gesagt.:
das timeout eingegeben habe, endet das programm einfach so :'( ...
Deine Threads werden nicht gestartet. Du erzeugst sie nur. Musst also noch ping.start() machen.

ich fang bei eins an, weil ich die ip (Bsp.: 192.168.1.0) nicht anpingen möchte
Dann solltest du das beim Zugriff des Arrays beachten und dort ping[i-1] schreiben.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E java.lang.NullPointerException aber nur wenns im Thread läuf Netzwerkprogrammierung 4
N SNMP - NullPointerException simplesnmpclient Netzwerkprogrammierung 1
M Socket Java Server: NullPointerException Netzwerkprogrammierung 4
G Multiple Clients and one Server --> java.lang.NullPointerException Netzwerkprogrammierung 1
D Socket Error: java.lang.NullPointerException Netzwerkprogrammierung 1
V NullPointerException bei Verbindung zu RabbitMQ-Server Netzwerkprogrammierung 4
V java.lang.NullPointerException at java.util.LinkedList.writeObject Netzwerkprogrammierung 10
N NullPointerException in WebService Netzwerkprogrammierung 4
L NullPointerException...finde den Fehler nicht Netzwerkprogrammierung 10
OnDemand Thread und Ratelimiter Netzwerkprogrammierung 4
F Thread "extern" beenden Netzwerkprogrammierung 3
OnDemand Linux RAM per Thread Netzwerkprogrammierung 3
V Socket Audio Clip loopen ohne neuen Thread Netzwerkprogrammierung 2
C Thread Netzwerkprogrammierung 9
platofan23 Socket Hilfe mit Socket Thread und ArrayList Netzwerkprogrammierung 6
A RMI RMI - Thread Objekte übertragen und auf anderer Machine weiterlaufen lassen Netzwerkprogrammierung 0
S Socket ThreadPool oder Thread pro Client? Netzwerkprogrammierung 11
T Socket Server starten Thread Problem Netzwerkprogrammierung 12
P Wie spreche ich einen Thread an? Netzwerkprogrammierung 20
M Thread Scheduler Java 5.0? Netzwerkprogrammierung 2
7 Mehrere Verbindungen gleichzeitig in einem Thread mit ApacheHTTP Netzwerkprogrammierung 7
D Socket Dynamische Socket-Thread Erzeugung Netzwerkprogrammierung 2
B Socket Thread handling / Reader init Netzwerkprogrammierung 8
Z Socket Socket-Thread falsch? Netzwerkprogrammierung 5
Helgon Socket Thread Pooling Netzwerkprogrammierung 6
M Was macht Thread, wenn er aus einem "leeren" Inputstream liest ? Netzwerkprogrammierung 5
B callback thread udp Netzwerkprogrammierung 2
D RMI und Thread Netzwerkprogrammierung 4
S Kommunikationsproblem, Thread und manuel Netzwerkprogrammierung 4
U Socket Abhören eines Sockets/Ports in extra Thread Netzwerkprogrammierung 8
K ein Thread pro Stream Netzwerkprogrammierung 2
D Weiterer Thread auf Port 843 horcht Netzwerkprogrammierung 7
D Thread problem Netzwerkprogrammierung 3
S Thread, Daten vom Socket lesen Netzwerkprogrammierung 2
S Thread Transport Netzwerkprogrammierung 6
S Socket Thread in Schleife Netzwerkprogrammierung 4
G Objekte per TCP verschicken + Thread Netzwerkprogrammierung 4
T synchronized mit thread und rückgabe Netzwerkprogrammierung 4
Q Thread und Sockets... Netzwerkprogrammierung 2
2 Class mit ServerSocket erbt von Thread? Netzwerkprogrammierung 3
PAX Outputstream von anderem Thread verwenden lassen Netzwerkprogrammierung 5
C Server mit Multithreading (Thread-Pool) Netzwerkprogrammierung 2
F EIN Thread in RMI auf Serverseite Netzwerkprogrammierung 3
G Server Thread beenden Netzwerkprogrammierung 16
T Socket-Thread: Designfrage Netzwerkprogrammierung 14
S Mit Thread arbeitende Maschine Netzwerkprogrammierung 6
T select() ohne NIO - oder wie Worker-Thread sauber beenden? Netzwerkprogrammierung 9
K Selbe Streams mehrfach nutzen (zusätl. Thread) Netzwerkprogrammierung 6
ven000m Thread Frage Netzwerkprogrammierung 11
B Thread.start() (run()) excption Netzwerkprogrammierung 2
M Thread läuft nicht weiter Netzwerkprogrammierung 2
U Current thread not owner Netzwerkprogrammierung 3
S readline-thread stoppt vorzeitig Netzwerkprogrammierung 6
J RMI - (RemoteException occurred in server thread) Netzwerkprogrammierung 2
S Webserverprogrammierung: Thread-Beschränkung Netzwerkprogrammierung 2
M Exception in thread "main" java.lang.NoClassDefFou Netzwerkprogrammierung 2
F problem mit thread bzw. netzwerkverbindung! Netzwerkprogrammierung 3
L netzwerk mit thread Netzwerkprogrammierung 3
G RMI thread safe ? Netzwerkprogrammierung 11
A Thread gibt Nachrichten mehrmals aus (Messenger in Java) Netzwerkprogrammierung 3

Ähnliche Java Themen


Oben