Introduzione Programmazione Java Paolo Tomeo [email protected] Regole basilari ● ● Java è case sensitive quindi prestare attenzione alle maiuscole Il commento si inserisce con // all'inizio della linea o delimitando il testo fra /* e */ //commento su una riga /* commento su una riga */ /* * commento su più righe */ ● Ogni istruzione termina con ; ● I blocchi di codice sono racchiusi fra parentesi graffe { } Convenzioni ● ● ● È consigliato definire il nome di una classe con prima lettera maiuscola Per il nome di un package invece si usa la prima lettere minuscola È fortemente consigliato commentare il codice per migliorarne la comprensibilità Metodo main package nomePackage; public class NomeClasse { public static void main(String[] args) { } } Per poter eseguire un programma è necessaria la presenza di un metodo main Un metodo main va dichiarato per forza in un classe. Può esserci un solo main per classe, ma più di un main per ogni package e progetto Per dichiarlo velocemente - scrivere main - premere Ctrl + Spazio Stampa testo in console package primi_esercizi; public class Prova { public static void main(String[] args) { System.out.println(“ciao!”); } } Per stampare un messaggio nella console usare il metodo System.out.println() Per scriverlo velocemente - scrivere sysout - premere Ctrl + Spazio Concatenazione stringhe package primi_esercizi; public class Prova { public static void main(String[] args) { String saluto = “Ciao ”; String nome = “Bobby”; System.out.println( saluto + nome ); } } Il + tra parentesi è utlizzato come operatore di concatenazione fra stringe Attenzione alle parentesi package primi_esercizi; public class Prova { Cosa accade se tolgo le parentesi a (numero + numero2)? public static void main(String[] args) { Integer numero = 1; Integer numero2 = 3; System.out.println ("La somma è " + (numero + numero2)); } } Il + è usato come operatore fra stringhe se l'operando sinistro è una stringa. Quindi è importante saper usare bene le parentesi in questi casi Classe Persona package primi_esercizi; public class Persona { String nome = "non dichiarato"; String cognome = "non dichiarato"; Integer anni; public Persona(String nome, String cognome){ this.nome = nome; this.cognome = cognome; } public String dammiNome(){ return this.nome; } } Esempio di definizione di una classe con tre attributi, in costruttore e un metodo Ogni classe può contenere zero, uno o più costruttori. In caso di più costruttori, essi devono differire per numero o tipo di parametri. Classe Persona package primi_esercizi; public class Persona { String nome = "non dichiarato"; String cognome = "non dichiarato"; Integer anni; public Persona(String nome, String cognome){ this.nome = nome; this.cognome = cognome; } public String dammiNome(){ return this.nome; } } } } } Tre attributi di cui due con valore di default Costruttore con due parametri Metodo di output che restituisce il valore dell'attributo nome Metodi in java ● Sintassi per definire un metodo modificatore_accesso tipo_restituito nome_metodo (Lista argomenti) { codice del metodo } Modificatori: private, public, e altri Tipi: void, int, float, String, e altri ● Sintassi per eseguire un metodo: – oggetto.metodo(argomenti) Si può dire invocare o chiamare un metodo come sinonimo di seguire Metodi costruttori in java ● Sintassi per definire un costruttore modificatore_accesso Nome_classe (Lista argomenti) { codice del costruttore } Va definito con lo stesso nome della classe Il valore di ritorno è l'indirizzo dell'oggetto che è stato appena creato Il costruttore si usa solitamente per inizializzare gli attributi (tutti o solo alcuni) definiti nella classe Esempio: Persona.java public class Persona { String nome; String cognome; public Persona() { } public Persona(String nome, String cognome) { this.nome = nome; this.cognome = cognome; } . . } Esempio: Persona.java public class Persona { String nome; String cognome; Costruttore vuoto public Persona() { } public Persona(String nome, String cognome) { this.nome = nome; this.cognome = cognome; } . . } Costruttore con corpo Esempio di utilizzo di Persona package primi_esercizi; public class usaPersona { public static void main(String[] args) { Persona p = new Persona("Pippo", "Rossi"); String nome = p.dammiNome(); System.out.println(nome); } } Lettura di un file di testo package primi_esercizi; public class usaPersona { public static void main(String[] args) { String percorsoFile = “”; BufferedReader r = new BufferedReader(new FileReader(percorsoFile)); String line; While ( (line = r.readLine()) != null ) { // codice che utilizza il contentuto della riga memorizzato in line } r.close(); } }