import java.io.*; import javagently.*; /*Importante: Un programma Java normalmente è costituito da una classe principale (l'unica che contiene il metodo main) e altre classi ausiliarie che definiscono gli oggetti ed i metodi che serviranno. Il programma viene invocato da Linux eseguendo la classe principale. E' buona pratica scrivere ogni classe in un file separato avente lo stesso nome della classe. Tuttavia è anche possibile scrivere tutte le classi in un unico file .java, che deve avere il nome della classe principale. -------------------------------------------------------------------------------- Esercizio 18 Scrivere una classe Socio che contiene: tre variabili di istanza: id di tipo intero, nome e cognome di tipo stringa; un costruttore con questa firma: Socio(int idv, String nomev, String cognomev) che inizializza le variabili di istanza con i valori idv, nomev e cognomev. un metodo print che stampa su una linea i valori delle variabili d'istanza id, cognome e nome come nel seguente esempio: 12 Rossi, Mario Scrivere poi la classe principale NuoviSoci che chiede ciclicamente all'utente il nome e il cognome di un nuovo socio, lo crea con new utilizzando come idv un valore progressivo che inizialmente vale 1 ed infine stampa i dati del nuovo socio con un opportuno commento invocando il metodo print.Il ciclo termina quando l'utente inserisce come nome e cognome la stringa "end". */ class Socio { int id; String nome, cognome; Socio(int idv, String nomev, String cognomev){ id = idv; nome = nomev; cognome = cognomev; } public void print (){ System.out.print(nome+" "+cognome+" "); } public void println (){ System.out.println ( id+" "+ nome+", "+cognome+"."); } } class NuoviSoci { public static void main(String[] args) throws IOException { BufferedReader in = Text.open(System.in); String Nome = null; String Cognome = null; int Id = 0; do { Text.prompt("Scrivi il tuo cognome: ") ; Cognome = Text.readString(in); Text.prompt("Scrivi il tuo nome: "); Nome = Text.readString(in); if ((Cognome.equals("end"))&& (Nome.equals("end"))) Id = Id+0; else {Id = Id+1; Socio a = new Socio( Id, Cognome, Nome); a.println (); a.print(); System.out.println("è un nuovo socio. Egli è il socio n:"+ Id); } }while(!((Cognome.equals("end"))&& (Nome.equals("end")))); //& Nome !="end"); } }