Salve a tutti, sono nuovo di questo forum. Programmo in java da qualche mesetto e son venuto qua per chiedere un piccolo aiutino :

codice:
	ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File(path)));
		Scanner s = new Scanner(System.in);  
		      
		for (int i = 0; i<n; i++)
			oos.writeObject(s.next());
Queste istruzioni sono contenute nel costruttore della mia classe, quando viene istanziata voglio che riempia iterativamente un file di oggetti. Se si tratta di passare stringhe usando il flusso System.in scrivendo da console funziona...ma se volessi scrivere oggetti qualsiasi passati da un flusso esterno qualsiasi come posso fare? Sarebbe una cosa così:

codice:
	ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File(path)));
		Scanner s = new Scanner(/* flusso generico di oggetti*/);  
		      
		for (int i = 0; i<n; i++)
			oos.writeObject(s.next());
Cioè vorrei fare in modo che lo scanner si metta in attesa e scriva l'oggetto solo quando il flusso viene aggiornato esternamente. Mi è stato detto che posso risolvere con multithreading e ci ho pensato anche io, ma non l'ho mai usato e vorrei evitare di usarlo per ora. Esistono soluzioni semplici per realizzare questo flusso in modo analogo al System.in? Grazie dell'aiuto!