[RISOLTO][JAVA] errore con thread e java.io

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
sepp95
Prode Principiante
Messaggi: 161
Iscrizione: lunedì 9 agosto 2010, 15:11

[RISOLTO][JAVA] errore con thread e java.io

Messaggio da sepp95 »

ciao a tutti. dopo un pò di tempo di inattività (la scuola e tutto il resto ha consentito poco quest'anno) torno ad affacciarmi allo studio del java. così ho deciso di vedere se riuscivo a ricordare almeno come fare un programmino inutile e semplice. ho trovato la risposta: NO!

potreste aiutarmi a capire dove ho sbagliato?
grazie

Codice: Seleziona tutto

import java.io.*;

public class programma extends Thread {
	Thread thread = new Thread();
	public boolean isInterrupted = false;
	public DataOutputStream leggi (String lista[]) {
		int i = args.length();
				for (int n=0; n<i; n++){
					String dati = lista[n];
					DataOutputStream dos = new DataOutputStream();
					dos.write(dati);
					dos.flush();
					return dos;				
					}
			isInterrupted = true;
					
	}
	

	public void scrivi (DataOutputStream dos){
		
		DataInputStream dis = new DataInputStream(dos){		
			if(!isInterrupted){
				String letto = dis.read();
				System.out.println(letto);
			}else {}	
			
		
		
	}


	public void run(String lista[]){
		DataOutputSteam leggi = new leggi(lista[]);
		scrivi = new scrivi(leggi);
	}

	public void main (String args[]){
		
		programma p = new programma();
		p.run();
	}
}		
				
a una prima occhiata, e anche a una seconda e a una terza, non trovo l'errore.

ecco il terminale cosa comanda:

Codice: Seleziona tutto

giuseppe@giuseppe-K50AB:~/Scrivania$ javac programma.java
programma.java:23: illegal start of type
			if(!isInterrupted){
			^
programma.java:23: illegal start of type
			if(!isInterrupted){
			   ^
programma.java:23: ')' expected
			if(!isInterrupted){
			    ^
programma.java:23: ';' expected
			if(!isInterrupted){
			                 ^
programma.java:26: illegal start of type
			}else {}	
			 ^
programma.java:26: ';' expected
			}else {}	
			     ^
programma.java:26: ';' expected
			}else {}	
			        ^
programma.java:34: '.class' expected
		DataOutputSteam leggi = new leggi(lista[]);
		                                         ^
8 errors

confido nel vostro aiuto
Ultima modifica di sepp95 il mercoledì 13 giugno 2012, 12:59, modificato 1 volta in totale.
Avatar utente
Zoff
Moderatore Globale
Moderatore Globale
Messaggi: 33338
Iscrizione: mercoledì 10 ottobre 2007, 22:36

Re: [JAVA] errore di compilazione classe con thread e java.

Messaggio da Zoff »

Oddio c'è un sacco di caos.

Vediamo se elenco tutto, dall'alto verso il basso:

1) args non è definito all'interno del metodo leggi, forse intendevi "lista"
2) DataOutputStream ha dei parametri obbligatori che non passi
3) write() può generare un eccezione quindi va messo dentor un blocco try/catch o va aggiunto uno throws alla signature dle metodo leggi()
4) C'è una graffa di troppo dopo il cotruttore DataInputStream()
5) leggi e scrivi non sono classi ma metodi, quindi non puoi usarli con "new"
6) Non passi argomenti al programma
7) Se richiami direttamente run() non usi i thread, devi richiamare start()

Se ho intuito quello che vuoi fare, non puoi riuscirci con i DataXXXXXStream, ti servono i PipedXXXXStream, che possono essere legati ciclicamente per leggere e scrivere come se si fosse ai due capi di una socket.
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
sepp95
Prode Principiante
Messaggi: 161
Iscrizione: lunedì 9 agosto 2010, 15:11

Re: [JAVA] errore di compilazione classe con thread e java.

Messaggio da sepp95 »

grazie zoff hai ragione. l'errore peggiore è stato nel non passare metodi al DataOutput/InputStream e nel chiamare i metodi con new.

non so come mi vengano ste cose. i piped me li ripasso e modifico subito tutti :P

garzie. metto risolto
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 4 ospiti