Sviluppare programmi Java tramite linea di comando

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sviluppare programmi Java tramite linea di comando"

Transcript

1 (VHUFLWD]LRQHQƒ 2ELHWWLYL Introduzione all utilizzo di -DYD'HYHORSPHQW.LW (-'.) versione 1.3 Sviluppare programmi Java tramite linea di comando Es: MDYDFMDYDMGEMDYDGRF«Primo esempio di programma Java con due classi: variante in un solo file variante in due file distinti Laboratorio di Fondamenti I TLC Esercitazione I 1 -'.LOGLUHWWRULR?MGN?OLEContiene i file usati dai tool di sviluppo?mgn?muh Java Runtime Environment. Librerie ed eseguibili per la Java Virtual Machine?MGN?ELQContiene i file eseguibili del tool di sviluppo Laboratorio di Fondamenti I TLC Esercitazione I 2

2 -'.LOGLUHWWRULRELQ Laboratorio di Fondamenti I TLC Esercitazione I 3 6WUXPHQWLDOLQHDGLFRPDQGR &RPSLODWRUH - javac 0DFFKLQDYLUWXDOH -java 'HEXJJHU -jdb Generatore automatico di GRFXPHQWD]LRQH LSHUWHVWXDOH - javadoc Altri FRPDQGL - appletviewer, javap, rmic, 'RFXPHQWD]LRQHFRPSOHWD Laboratorio di Fondamenti I TLC Esercitazione I 4

3 MDYDF Legge VRUJHQWL-DYD di classi e interfacce e li FRPSLOD in FODVVILOH in formato E\WHFRGH Permette di compilare FODVVL VLQJROH e JUXSSL GL FODVVL, anche mantenendo direttori separati per i file sorgenti e compilati MDYDF [opzioni] [sorgenti] [@ElencoSorg] possibili opzioni: - FODVVSDWK: classi bootstrap, extension, poi FODVVSDWK di utente (YDULDELOHGLDPELHQWH e RS]LRQH) -G (direttorio per classi), -J (debugging abilitato), -YHUERVH(info estese sulla compilazione), Laboratorio di Fondamenti I TLC Esercitazione I 5 MDYD Mette in HVHFX]LRQH una applicazione Java Avvia una macchina virtuale Java, FDULFD una classe specificata e invoca il suo metodo PDLQ (SXEEOLFR e VWDWLFR) MDYD [opzioni] File.class [parametri] MDYD [opzioni] -jar File.jar [parametri] varianti: MDYDZ, ROGMDYD, ROGMDYDZ opzioni: -FODVVSDWK/-FS, -MDU, -YHUERVH, -YHUVLRQ, -",... Laboratorio di Fondamenti I TLC Esercitazione I 6

4 MGE Permette di eseguire il GHEXJJLQJ (esecuzione SDVVR SDVVR, EUHDNSRLQW, osservazione di YDULDELOL,...) di un programma Java MGE File.class invoca una QXRYD macchina virtuale Java che esegue il programma in modalità debugging è anche possibile agganciare una macchina virtuale già in esecuzione (opzione -Xdebug di MDYD) &RPDQGL: KHOS/", UXQ, FRQW, SULQW (mostra oggetti o tipi primitivi), VWRS DWLQ (posiziona breakpoint), FOHDU (rimuove breakpoint), VWHS (esecuzione passo-passo) Laboratorio di Fondamenti I TLC Esercitazione I 7 MDYDGRF Analizza le GLFKLDUD]LRQL e i FRPPHQWL di un insieme di file sorgenti Java e produce la corrispondente GRFXPHQWD]LRQH LSHUWHVWXDOH (formato html), descrivendo FODVVL, LQWHUIDFFH, FRVWUXWWRUL, PHWRGL e FDPSL Può essere invocato su VLQJROHFODVVL o LQWHULSDFNDJH MDYDGRF [opzioni][package][sorg][@elencos/p] Vari tag standardizzati per i commenti: #DXWKRU#SDUDP#UHWXUQ#WKURZV#VHH#YHUVLRQ«(6(03,2 /** * This is a <b>doc</b> comment. java.lang.object */ Laboratorio di Fondamenti I TLC Esercitazione I 8

5 (VHPSLR/ (852&219(57,725( 6FRSR 'HILQLUHXQDDVWUD]LRQHSHUXQVHPSOLFH(XUR&RQYHUWLWRUH 6SHFLILFD Componente caratterizzato in ogni istante da un accumulatore che contiene la quantità corrente di Euro da convertire Componente a cui si accede tramite le operazioni di: DGG: Somma Euro alla quantità in accumulatore VXE Toglie Euro alla quantità in accumulatore FRQYHUW restituisce il corrispondente valore in Lire della quantità di Euro in accumulatore FXUUHQW9DOXH restituisce l attuale valore dell accumulatore Laboratorio di Fondamenti I TLC Esercitazione I 9 (VHPSLR/ (852&219(57,725( 'XHSRVVLELOLWj LPSOHPHQWDWLYH GHILQLUHLOWLSRGLGDWRDVWUDWWR $'7³(XUR&RQYHUWLWRUH H SRLVIUXWWDUORSHUFUHDUH ³RJJHWWL GLWLSR³(XUR &RQYHUWLWRUH GHILQLUHLQXQ02'8/2 OD VLQJRODDVWUD]LRQHGLGDWR ³(XUR&RQYHUWLWRUH HSRL XVDUORµFRVuFRP q Laboratorio di Fondamenti I TLC Esercitazione I 10

6 (VHUFLWD]LRQHQƒYDULDQWHLQXQILOH &RPHSURFHGHUH" Scaricare il file (VHPSLRMDYD dal sito Web del corso e salvarlo in &?7(03 Il file (VHPSLRMDYD contiene due classi: una classe SXEOLF di nome completo (VHPSLR e una classe innestata di nome (XUR&RQYHUWHU. Laboratorio di Fondamenti I TLC Esercitazione I 11 (VHUFLWD]LRQHQƒYDULDQWHLQXQILOH La classe (XUR&RQYHUWHU definisce il tipo di dato astratto Euro-Convertitore. 3DUWH 1DVFRVWD VWDWR definisce in una variabile protetta l accumulatore 3DUWH9LVLELOHRSHUD]LRQL &RVWUXWWRUH EuroConverter(double euro) 7UDVIRUPDWRULvoid add(double euro) void sub (double euro) 6HOHWWRUL double currentvalue() double convert() Per l arrotondamento si possono usare i metodi di utilità predefiniti nella classe java.lang.math di Java Laboratorio di Fondamenti I TLC Esercitazione I 12

7 (VHUFLWD]LRQHQƒYDULDQWHLQXQILOH La classe (VHPSLR contiene il metodo PDLQ nel quale viene utilizzato il tipo di dato astratto (XUR&RQYHUWHU In particolare, crea due oggetti di tipo (XUR&RQYHUWHU referenziati dalle variabili uno e due ed inizializzati al valore iniziale comune di ¼ 100,00. Quindi somma 10 Euro al convertitore uno e ne toglie 10 dal convertitore due. [istruzioni uno.add(10.00); e due.dec(10.00); ]. Infine stampa a video i valori di conversione in Lire degli accumulatori dei due convertitori usando System.out.println per la stampa. Il valore nel convertitore uno sarà , quello del convertitore due Laboratorio di Fondamenti I TLC Esercitazione I 13 (VHUFLWD]LRQHQƒYDULDQWHLQXQILOH 8QDSRVVLELOHVROX]LRQH&RQWHQXWRGHOILOH(VHPSLRMDYD public class Esempio1 { public static void main(string[] args) { EuroConverter uno = new EuroConverter (100.00); EuroConverter due = new EuroConverter (100.00); uno.add(10.00); due.sub(10.00); System.out.println("Uno: Importo Lire " + uno.convert()); System.out.println("Due: Importo Lire " + due.convert());} } public class EuroConverter{ private double i=0; //ACCUMULATORE public EuroConverter(double j) {i=j;} public void add(double j) {i=i+j;} //Somma i di j Euro public void sub(double j){i=i-j;} // Sottrazione... public double currentvalue(){return i} public double convert() {return Math.rint(i* );} } Laboratorio di Fondamenti I TLC Esercitazione I 14

8 (VHUFLWD]LRQHQƒYDULDQWHLQXQILOH &RPSLOD]LRQH C:\TEMP> javac Esempio1.java TXDOLHTXDQWLILOHFODVVSURGXFH",QTXDOHGLUHFWRU\" C:\TEMP> javac -g Esempio1.java (VHFX]LRQH FRVDFDPELD" L opzione -g avvia una compilazione con informazione di debugging abilitate 'RFXPHQWD]LRQH C:\TEMP> java Esempio1 C:\TEMP> javadoc Esempio1.java Laboratorio di Fondamenti I TLC Esercitazione I 15 /HVWUXWWXUHGL&RQWUROOR Esistono in Java alcune istruzioni che consentono di saltare in modo controllato da una istruzione all altra, variando l ordine implicito di HVHFX]LRQHVHTXHQ]LDOH del programma.,vwux]lrqlgl6hoh]lrqhlihovhvzlwfk,vwux]lrqlgl,whud]lrqhiru ZKLOHGRZKLOH,VWUX]LRQLGL6DOWREUHDNFRQWLQXHHFFH]LRQL Da usare solo se strettamente necessario (es: in associazione al costrutto switch) poiché possono pregiudicare la leggibilità del codice! Laboratorio di Fondamenti I TLC Esercitazione I 16

9 ,VWUX]LRQLGL6HOH]LRQH LI FRQGL]LRQH LVWUX]LRQH HOVH LVWUX]LRQH LI FRQGL]LRQH^,VWUX]LRQL `HOVH LVWUX]LRQH &RQGL]LRQH: qualunque espressione che ritorni un valore boolean (true o false) Se FRQGL]LRQH è WUXH viene eseguita LVWUX]LRQH, se IDOVH LVWUX]LRQH. In nessun caso entrambe le istruzioni (o blocchi di istruzioni). Parte HOVH opzionale Possibilità di più LI annidati Laboratorio di Fondamenti I TLC Esercitazione I 17,VWUX]LRQLGL,WHUD]LRQH IRU LQL]LDOL]]D]LRQHFRQGL]LRQHLWHUD]LRQH^ LVWUX]LRQL `,QL]LDOL]]D]LRQH: espressione che imposta il valore della/e variabile/i di controllo del ciclo &RQGL]LRQH: qualunque espressione che ritorni un valore boolean (true o false) Se FRQGL]LRQH è WUXH viene eseguito il corpo del ciclo, se IDOVH il ciclo termina,whud]lrqh: espressione che incrementa o riduce alla fine di ogni iterazione il valore della/e variabile/i di controllo del ciclo (6 IRU LQW D DD 6\VWHPRXWSULQWOQ³&RQWDQWRUH D Laboratorio di Fondamenti I TLC Esercitazione I 18

10 ,VWUX]LRQLGL,WHUD]LRQH ZKLOH FRQGL]LRQH^ FRUSRGHOFLFOR ` `ZKLOH FRQGL]LRQH &RQGL]LRQH: qualunque espressione che ritorni un valore boolean (true o false) Viene eseguito il corpo del ciclo finchè (tante volte quante) FRQGL]LRQH è WUXH. Quando FRQGL]LRQH diventa IDOVH il controllo passa alla riga di codice immediatamente sucessiva al ciclo. Nel ciclo GRZKLOH il corpo con le istruzioni viene eseguito almeno una volta, nel ciclo ZKLOH ciò non è sempre vero. (6 GR^ FRUSRGHOFLFOR int a = 0; ZKLOH D^ 6\VWHPRXWSULQWOQ³&RQWDQWRUH DD ` Laboratorio di Fondamenti I TLC Esercitazione I 19 (VHUFLWD]LRQHQƒYDULDQWHVXGXHILOH 6FRSR 'HILQLUHOHFODVVLVXSLILOH (VHPSLRGLXVRGHOOHVWUXWWXUHGLFRQWUROOR 5HDOL]]DUHXQ DSSOLFD]LRQHFKHVWDPSDXQDWDEHOOD GLFRQYHUVLRQH 6SHFLILFD Si vuole produrre in uscita la stampa di una tabella di conversione Euro -> Lire per i valori 1,5,10,15,20,.100. (6 Euro: 1 Lire: 1936 Euro: 5 Lire: 9681 Euro: Laboratorio di Fondamenti I TLC Esercitazione I 20

11 (VHUFLWD]LRQHQƒYDULDQWHVXGXHILOH &RPHSURFHGHUH" Togliere dal file (VHPSLRMDYD la classe (XUR&RQYHUWHU e copiarla in un nuovo file di nome (XUR&RQYHUWHUMDYD SXEOLFFODVV EuroConverter { SULYDWH double i=0; } SXEOLF EuroConverter(GRXEOH j) { i=j;} SXEOLFYRLG add(grxeoh j) { i=i+j;} SXEOLFYRLG sub(grxeoh j){ i=i-j;} SXEOLFGRXEOH currentvalue(){uhwxuql} SXEOLFGRXEOH convert() {UHWXUQ Math.rint(i* );} Salvare il file sotto la directory C:\TEMP 5LFRUGD,OQRPHGHOILOHGHYHFRUULVSRQGHUHDOQRPHGHOODFODVVH Laboratorio di Fondamenti I TLC Esercitazione I 21 (VHUFLWD]LRQHQƒYDULDQWHVXGXHILOH &RPSLODUH«C:\TEMP> javac EuroConverter.java TXDOLHTXDQWLILOHFODVVSURGXFH",QTXDOHGLUHFWRU\" (VHJXLUH«C:\TEMP> java EuroConverter KDVHQVR" 'RFXPHQWDUH«C:\TEMP> javadoc EuroConverter.java 4XDOqLOYDQWDJJLRGLDYHUHXQDFODVVH(XUR&RQYHUWHU DSDUWH" Maggiore RIUTILIZZABILITA, tutti i cambiamenti sulla classe (XUR&RQYHUWHU sono confinati alla classe (XUR&RQYHUWHU dentro il file (XUR&RQYHUWHUMDYD Laboratorio di Fondamenti I TLC Esercitazione I 22

12 (VHUFLWD]LRQHQƒYDULDQWHVXGXHILOH Scaricare anche file (VHPSLRMDYD e salvare sempre in &?7(03 SXEOLFFODVV Esempio2 { SXEOLFVWDWLFYRLG main(string args[]) { EuroConverter uno = QHZ EuroConverter(1.00); } IRU (LQW i=0; i<20; i++){ System.out.println("Euro: " + uno.currentvalue() + " Lire: " + uno.convert()); LI (uno.currentvalue() == 1) uno.add(4.00); HOVH uno.add(5); } } Notare l uso delle strutture di controllo. Quindi compilare ed eseguire come per (VHPSLRMDYD. Laboratorio di Fondamenti I TLC Esercitazione I 23 3URSRVWHGL(VHUFL]LR Si riesce a compilare ed eseguire anche la classe Esempio1.java modificata (senza la classe innestata EuroConverter)? 6u 3URYDUH«Come realizzare un Abstract Data Type in C? Laboratorio di Fondamenti I TLC Esercitazione I 24

Esercitazione n 1. Obiettivi

Esercitazione n 1. Obiettivi Esercitazione n 1 Obiettivi Introduzione all utilizzo di Java Development Kit (JDK) versione 1.3 Sviluppare programmi Java tramite linea di comando Es: javac, java, jdb, javadoc Primo esempio di programma

Dettagli

Esercitazione n 1. JDK1.3: il direttorio /bin

Esercitazione n 1. JDK1.3: il direttorio /bin Esercitazione n 1 Introduzione all utilizzo di -DYD'HYHORSPHQW.LW (-'.) versione 1.3 Sviluppare programmi Java tramite linea di comando javac, java, jdb, javadoc Sviluppare programmi Java in ambienti integrati

Dettagli

Esempio: L EURO-CONVERTITORE (1) Scopo

Esempio: L EURO-CONVERTITORE (1) Scopo Esempio: L EURO-CONVERTITORE (1) Scopo Realizzare un sistema software per la conversione di euro in lire. In particolare, si vuole, definire un euro-covertitore e, dati due oggetti di tipo euro convertitore

Dettagli

Esercitazione n 2. Obiettivi

Esercitazione n 2. Obiettivi Esercitazione n 2 Obiettivi Progettazione di una applicazione Java Utilizzo di classi come schemi Utilizzo di costruttori Utilizzo di stringhe Uguaglianza tra oggetti Utilizzo di classi come componenti

Dettagli

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Agenda

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Agenda Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 PASSO 0 Agenda Informazioni di servizio

Dettagli

3) Descrivere l architettura di un elaboratore tramite astrazione a livelli

3) Descrivere l architettura di un elaboratore tramite astrazione a livelli Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l

Dettagli

Esonero di Informatica I. Ingegneria Medica

Esonero di Informatica I. Ingegneria Medica Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l

Dettagli

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]

Dettagli

Corso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione

Corso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione Corso: Fondamenti di Informatica (Gruppo 2) a.a. 2017-18 Corsi di laurea: Ing. Settore Informazione Questionario a Risposte Multiple per auto-valutazione del Lab05 Domanda n. 1 Argomento: Iterazioni, array

Dettagli

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 6 - Blocchi e cicli Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it

Dettagli

Introduzione alla Programmazione in Java attraverso un esempio commentato

Introduzione alla Programmazione in Java attraverso un esempio commentato Corso di Studi in Informatica Programmazione 1 corso B prof. Elio Giovannetti Introduzione alla Programmazione in Java attraverso un esempio commentato Programmazione 1 B - a.a. 2002-03 53 Modello di memoria

Dettagli

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Lettura di dati da input In Java la lettura di dati da input

Dettagli

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 19 - Eccezioni Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzioni di controllo Iterative Condizionali Algoritmi e Diagrammi di flusso Esercizi 28/03/2011 2 Istruzioni iterative while do

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

Classpath e Esercizi su RMI

Classpath e Esercizi su RMI Classpath e Esercizi su RMI Esercitazione di Laboratorio di Programmazione di Rete A Daniele Sgandurra Università di Pisa 26/11/2008 Classpath Quando si avvia l interprete, esso deve localizzare le classi

Dettagli

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false;

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false; Metodi iterativi con array monodimensionali 1. Scrivere un metodo che, dato un array di interi a, restituisce il valore minimo in a. public static int minimo (int[] a) { int min = a[0]; for (int i=1; i

Dettagli

AMBIENTI DI PROGRAMMAZIONE

AMBIENTI DI PROGRAMMAZIONE AMBIENTI DI PROGRAMMAZIONE È l'insieme dei programmi che consentono la scrittura, la verifica e l'esecuzione di nuovi programmi (fasi di sviluppo) Sviluppo di un programma Affinché un programma scritto

Dettagli

Introduzione a Java. Riferimenti

Introduzione a Java. Riferimenti Introduzione a Java Si ringraziano Massimiliano Curcio e Matteo Giacalone 1: Introduction 1 Riferimenti! Java tutorial: http://java.sun.com/docs/books/tutorial/! Il Java tutorial è parte di una più ampia

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzione condizionale switch Istruzioni di salto break e continue Uso di variabili di tipo boolean Variabili di tipo array (monodimensionali)

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 6 Introduzione al C++ Mauro Piccolo Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,

Dettagli

Lezione 9 programmazione in Java Classi come contenitori

Lezione 9 programmazione in Java Classi come contenitori Lezione 9 programmazione in Java Classi come contenitori Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Gestione della Memoria Dati dinamici e statici Il passaggio

Dettagli

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro Laboratorio di Programmazione Lezione 1 Cristian Del Fabbro Reperibilità homepage corso: https://users.dimi.uniud.it/~cristian.delfabbro/teaching.php email: cristian.delfabbro@uniud.it telefono: 0432 558676

Dettagli

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe String Una stringa Java rappresenta uno specifico valore e come

Dettagli

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi

Linguaggio Java. Robusto. Orientato agli oggetti. Protegge e gestisce dagli errori. Non permette costrutti pericolosi Linguaggio Java Robusto Non permette costrutti pericolosi Eredità Multipla Gestione della Memoria Orientato agli oggetti Ogni cosa ha un tipo Ogni tipo è un oggetto (quasi) Protegge e gestisce dagli errori

Dettagli

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 7 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 7 SE PROGRAMMER

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma

Indice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma Indice Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java Introduzione all ambiente di sviluppo - Compilazione ed esecuzione di un programma - Compilazione ed esecuzione

Dettagli

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 9 - Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea

Dettagli

Iterazioni. L istruzione while. while (condition) istruzione

Iterazioni. L istruzione while. while (condition) istruzione Iterazioni L istruzione while while (condition) istruzione Ripete l esecuzione di istruzione fino a che la condizione resta vera while (balance < targetbalance) year++; double interest = balance * rate

Dettagli

Java Native Interface Appunti

Java Native Interface Appunti Java Native Interface Appunti Riccardo Rizzo 1/8 Introduzione L'uso delle Java Native Interface e' giustificato tutte quelle volte che una applicazione non puo' essere scritta interamente in Java. Per

Dettagli

OCA JAVA 8 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO

OCA JAVA 8 SE PROGRAMMER I DOCENTE: DOTT. FAUSTO DELL ANNO CENTRO STUDI ULISSE Via Buccino, n. 22 - C.a.p. 84018 - Scafati (SA) Tel. Fax. 081.19970299-339.2365416-349.4152010 E-mail: info@centrostudiulisse.it - www.centrostudiulisse.it OCA JAVA 8 SE PROGRAMMER

Dettagli

Il concetto di Package

Il concetto di Package Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2008-2009 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it - lezione 19 - Package in Java 1 Il concetto

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01

Dettagli

Modulo 2: Strutture fondamentali della programmazione Java

Modulo 2: Strutture fondamentali della programmazione Java Modulo 2: Strutture fondamentali della programmazione Java Argomenti Trattati: Un semplice programma Java: Presentazione di un primo Esempio; Introduzione alla struttura; Compilazione ed esecuzione. Argomenti

Dettagli

La Gestione della Memoria. Carla Binucci e Walter Didimo

La Gestione della Memoria. Carla Binucci e Walter Didimo La Gestione della Memoria Carla Binucci e Walter Didimo Esecuzione di programmi Java L esecuzione di un programma Java richiede: la compilazione del codice Java in bytecode Java (un linguaggio macchina

Dettagli

Introduzione a Java. Giovanni Pardini Dipartimento di Informatica Università di Pisa.

Introduzione a Java. Giovanni Pardini Dipartimento di Informatica Università di Pisa. a Java 1 Giovanni Pardini pardinig@di.unipi.it www.di.unipi.it/~pardinig Dipartimento di Informatica Università di Pisa 30 novembre 2009 1 2 3 1 Sintassi di base Hello World! Blocchi e variabili 2 Sintassi

Dettagli

Sviluppare un programma in FORTRAN

Sviluppare un programma in FORTRAN Sviluppare un programma in FORTRAN Scrivere il file sorgente Editor di testo (emacs, vi, notepad, etc) Compilare Compilatore (ifort, gfortran, etc) Eseguire il programma Riga di comando, doppio click,

Dettagli

Laboratorio Progettazione Web Le funzioni in PHP. Angelica Lo Duca IIT-CNR 2012/2013

Laboratorio Progettazione Web Le funzioni in PHP. Angelica Lo Duca IIT-CNR 2012/2013 Laboratorio Progettazione Web Le funzioni in PHP Angelica Lo Duca IIT-CNR angelica.loduca@iit.cnr.it 2012/2013 Funzioni Una funzione è una sequenza di istruzioni che implementano una specifica funzionalità

Dettagli

Capitolo 1. Introduzione. Cay S. Horstmann Concetti di informatica e fondamenti di Java

Capitolo 1. Introduzione. Cay S. Horstmann Concetti di informatica e fondamenti di Java Capitolo 1 Introduzione Cay S. Horstmann Concetti di informatica e fondamenti di Java Obiettivi del capitolo Capire il significato dell attività di programmazione Imparare a riconoscere le componenti più

Dettagli

Costrutti iterativi. Utilizzo dei costrutti iterativi

Costrutti iterativi. Utilizzo dei costrutti iterativi Costrutti iterativi Utilizzo dei costrutti iterativi Costrutti iterativi (1/3) I costrutti iterativi permettono di eseguire ripetutamente del codice Il linguaggio Java mette a disposizione tre costrutti

Dettagli

Programmazione Java Struttura di una classe, Costruttore, Riferimento this

Programmazione Java Struttura di una classe, Costruttore, Riferimento this Programmazione Java Struttura di una classe, Costruttore, Riferimento this romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap > Struttura di una classe > Costruttore > Riferimento

Dettagli

PER UTILIZZARE LCC IN LAB

PER UTILIZZARE LCC IN LAB PER UTILIZZARE LCC IN LAB La prima volta che un utente utilizza lcc-win32 deve impostare una chiave nel registro utente. Per fare questo occorre semplicemente: Aprire con il gestione risorse la cartella

Dettagli

7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari

7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari 7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa

Dettagli

Esercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni

Esercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni Esercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni Esercizio 1 Dire quale è la complessità temporale del seguente metodo, espressa con notazione asintotica O(.) (con la migliore

Dettagli

Oggetti. Oggetti e classi. Utilizzo di classi. Classe

Oggetti. Oggetti e classi. Utilizzo di classi. Classe Oggetti Oggetti e classi Oggetto: entità che può essere manipolata nel programma mediante l invocazione di metodi Black box dotato di:! Interfaccia pubblica " Metodi visibili " Comportamento dell oggetto!

Dettagli

TIPI PRIMITIVI: LIMITI

TIPI PRIMITIVI: LIMITI TIPI PRIMITIVI: LIMITI I tipi primitivi sono i "mattoni elementari" del linguaggio In varie situazioni può però essere necessario trattare i tipi primitivi come oggetti quando una funzione pretende come

Dettagli

TIPI PRIMITIVI E CLASSI WRAPPER

TIPI PRIMITIVI E CLASSI WRAPPER I tipi primitivi come oggetti Package java.lang In varie situazioni, può essere comodo poter trattare i tipi primitivi come oggetti per passarli per riferimento a una funzione quando una funzione pretende

Dettagli

GESTIONE DEGLI ERRORI

GESTIONE DEGLI ERRORI GESTIONE DEGLI ERRORI Spesso vi sono istruzioni critiche, che in certi casi possono produrre errori L approccio classico consiste nell inserire controlli (if else..) per cercare di intercettare a priori

Dettagli

IL CONCETTO DI PACKAGE

IL CONCETTO DI PACKAGE IL CONCETTO DI PACKAGE Una applicazione è spesso composta di molte classi (eventualmente correlate) Un package è un gruppo di classi che costituiscono una unità concettuale. un package può comprendere

Dettagli

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Selezione di prove di esame al calcolatore Esercizio 1 (esame del 13/01/2006) La classe Matrice definisce oggetti che rappresentano matrici

Dettagli

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il

Dettagli

Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un

Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un giocatore, ogni giocatore una scheda Ci vengono già fornite le classi necessarie

Dettagli

Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso

Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso AA 2015/2016 Tutor: Vincenzo Lomonaco vincenzo.lomonaco@unibo.it Programma Introduzione al calcolatore

Dettagli

OO puro. Primi concetti di Java. Tipi primitivi. Ogni cosa è un oggetto. Java è object-oriented puro Non come il C+ + (OO ibrido) Lorenzo Bettini

OO puro. Primi concetti di Java. Tipi primitivi. Ogni cosa è un oggetto. Java è object-oriented puro Non come il C+ + (OO ibrido) Lorenzo Bettini Primi concetti di Java Lorenzo Bettini OO puro Java è object-oriented puro Non come il C+ + (OO ibrido) Per compatibilità col C Ogni cosa è un oggetto Gli oggetti si manipolano tramite riferimenti String

Dettagli

Laboratorio di Programmazione. Programmini più complessi

Laboratorio di Programmazione. Programmini più complessi Programmini più complessi AreaRettangolo.java /* AreaRettangolo calcola l area di un rettangolo */ public class AreaRettangolo { public static void main(string args[]) { int base=3; int altezza=4; System.out.print("L

Dettagli

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo

Programmazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy

Dettagli

Definizione di metodi in Java

Definizione di metodi in Java Definizione di metodi in Java Un metodo in Java definisce un operazione ad alto livello (sottoprogramma) che consente di manipolare dati e oggetti. Durante la computazione effettuata da un programma, un

Dettagli

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java

Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica Variabili e Metodi di classe Interfacce e Package Gestione di File in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Variabili di classe: Static Una variabile di classe

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi.. 2010/2011 Sommario Conversione di tipo:casting Tipo enumerativo lgebra Booleana Esercizi Conversione di tipo:casting Il casting o conversione di tipo avviene

Dettagli

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario La classe String Lettura da input di dati numerici (tipo int) Stampa di dati numerici Uno sguardo al codice Esercizi 21/03/2011 2

Dettagli

Perché il linguaggio C?

Perché il linguaggio C? Il linguaggio C 7 Perché il linguaggio C? Larga diffusione nel software applicativo Standard di fatto per lo sviluppo di software di sistema Visione a basso livello della memoria Capacità di manipolare

Dettagli

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.

Unità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma. Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti

Dettagli

Uso di metodi statici. Walter Didimo

Uso di metodi statici. Walter Didimo Uso di metodi statici Walter Didimo Metodi di istanza Fino ad ora abbiamo imparato a creare oggetti e ad invocare metodi su tali oggetti i metodi venivano eseguiti dagli oggetti un metodo invocato su un

Dettagli

Programmazione ad Oggetti. Java Parte II

Programmazione ad Oggetti. Java Parte II Programmazione ad Oggetti Java Parte II Overview Caratteristiche lessicali Il primo programma Java 1 Commenti /* Commento tradizionale, eventualmente su più linee, non nidificato */ // Commento su di una

Dettagli

Scrivere un programma in Java

Scrivere un programma in Java Programmare in JAVA Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA uff. 0577 234850 - interno: 7102 Stanza 119 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/

Dettagli

la traduzione dei programmi ed introduzione a Java

la traduzione dei programmi ed introduzione a Java la traduzione dei programmi ed introduzione a Java programmi descrizioni di algoritmi effettuate tramite linguaggi di programmazione lo stesso algoritmo, fissato un linguaggio di programmazione, può essere

Dettagli

Lezione 10 programmazione in Java. Anteprima. Programmazione OO. La programmazione orientata agli Oggetti. Javadoc. Esercizi

Lezione 10 programmazione in Java. Anteprima. Programmazione OO. La programmazione orientata agli Oggetti. Javadoc. Esercizi Lezione 10 programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima La programmazione orientata agli Oggetti Cosè un oggetto I metodi Il costruttore

Dettagli

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Esercizi sui metodi. Carla Limongelli. Maggio Esercizi 1

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Esercizi sui metodi. Carla Limongelli. Maggio Esercizi 1 Corso di Laurea Ingegneria Civile Fondamenti di Informatica Esercizi sui metodi Carla Limongelli Maggio 2010 Esercizi 1 Passaggio di parametri di tipo primitivo Indicare che cosa viene visualizzato sullo

Dettagli

Laboratorio di Informatica 4 Novembre 2005

Laboratorio di Informatica 4 Novembre 2005 Laboratorio di Informatica 4 Novembre 2005 Marco Iarusso Programmazione Java Ringraziamenti Parte della presente dispensa materiale didattico è derivato dalla dispensa prodotta da Luca Cabibbo Dip. Informatica

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014 Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 11 luglio 2014 TEMPO DISPONIBILE: 2 ore Negli esercizi

Dettagli

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche

Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Strumenti per la programmazione

Strumenti per la programmazione Editing del programma Il programma deve essere memorizzato in uno o più files di testo editing codice sorgente 25 Traduzione del programma Compilazione: è la traduzione effettuata da un compilatore Un

Dettagli

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList Fondamenti di Informatica L-B 1 ArrayList Abbiamo detto che gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito

Dettagli

Laboratorio di Programmazione Lezione 4. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 4. Cristian Del Fabbro Laboratorio di Programmazione Lezione 4 Cristian Del Fabbro Prossima lezione Mercoledì 25 novembre ore 8:30-11:00 Classe Una classe descrive degli oggetti tramite: Proprietà/variabili/campi (dati/caratteristiche,

Dettagli

Laboratorio di Programmazione 1 [Java]

Laboratorio di Programmazione 1 [Java] Laboratorio di Programmazione 1 [Java] Prova di esame - 26 Gennaio 2011 Tempo massimo: 50 minuti Si implementino in Java le classi Tavolo e Pizzeria. La classe Tavolo ha i seguenti attributi: nome (una

Dettagli

Java: Compilazione e Traduzione. Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA. C: Editing, compilazione, esecuzione

Java: Compilazione e Traduzione. Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA. C: Editing, compilazione, esecuzione Fondamenti di Informatica L-B Esercitazione n 3 Introduzione a JAVA A.A. 2007/08 Tutor: Barbara Pettazzoni barbara.pettazzoni@studio.unibo.it Java: Compilazione e Traduzione Editing, compilazione, esecuzione

Dettagli

Esempi al calcolatore su: 1) Costruttori ed ereditarietà 2) Subtyping e polimorfismo

Esempi al calcolatore su: 1) Costruttori ed ereditarietà 2) Subtyping e polimorfismo Esempi al calcolatore su: 1) 2) Subtyping e polimorfismo 1 Esempio 1: 2 Introduzione Java prevede due automatismi legati ai costruttori: Se una classe non ha costruttori viene creato automaticamente il

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Paradigma OO Oggetti e Classi Metodi Parametri Variabili di istanza Costruttori Esercizi Paradigma Object-Oriented Il paradigma OO

Dettagli

Uso di classi e oggetti. Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Uso di classi e oggetti. Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Uso di classi e oggetti Prof. Francesco Acarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Tipi di dati Tipi primitivi: interi Java fornisce otto tipi primitivi indipendenti dall implementazione

Dettagli

Metodi. Un metodo è una porzione di codice a cui si associa un nome. Un istruzione eseguita da un metodo può essere:

Metodi. Un metodo è una porzione di codice a cui si associa un nome. Un istruzione eseguita da un metodo può essere: Metodi Un metodo è una porzione di codice a cui si associa un nome. Un istruzione eseguita da un metodo può essere: invocazione: esecuzione di un metodo assegnamento: cambia lo stato di un campo ripetizione:

Dettagli

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Enumerativi

Fondamenti di Informatica T2 Modulo 2. Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009. Enumerativi Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Enumerativi Finora abbiamo creato enumerativi

Dettagli

Riassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1.

Riassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1. I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 2 28 settembre

Dettagli

Array mono- e bi-dimensionali Cicli while e do-while

Array mono- e bi-dimensionali Cicli while e do-while 111 Fondamenti di Informatica Array mono- e bi-dimensionali Cicli while e -while Fondamenti di Informatica - D. Talia - UNICAL 1 111 Array Monodimensionali Nell uso di array L operazione sull indice può

Dettagli

Funzioni, Stack e Visibilità delle Variabili in C

Funzioni, Stack e Visibilità delle Variabili in C Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7

Dettagli

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse

Prova Finale a.a. 2011/2012. Laboratorio 1: Introduzione a Java e Eclipse Prova Finale a.a. 2011/2012 Laboratorio 1: Introduzione a Java e Eclipse 1 Java 6 Standard Edition Linguaggio Java (... (javac, Tool di sviluppo Librerie per l'interfaccia grafica Librerie di base Macchina

Dettagli

Metodi statici. Dichiarazione e chiamata di metodi statici

Metodi statici. Dichiarazione e chiamata di metodi statici Metodi statici Dichiarazione e chiamata di metodi statici Cos è un metodo Un metodo è un blocco di istruzioni che fornisce una funzionalità e viene identificato con un nome Può avere dei parametri ed un

Dettagli

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Introduzione a Java IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Linguaggi di programmazione Ogni programma viene scritto utilizzando un linguaggio specializzato, formale e comprensibile da

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Fondamenti di Programmazione Prof.ssa Elisa Tiezzi. Programmazione orientata a oggetti

Fondamenti di Programmazione Prof.ssa Elisa Tiezzi. Programmazione orientata a oggetti Fondamenti di Programmazione Prof.ssa Elisa Tiezzi Programmazione orientata a oggetti 1 Programmazione OO Concetti base: dati istruzioni Dati: variabili tipi Istruzioni: istruzioni base strutture di controllo

Dettagli

Istruzioni di ripetizione in Java 1

Istruzioni di ripetizione in Java 1 in Java Corso di laurea in Informatica Le istruzioni di ripetizione consentono di eseguire molte volte la stessa Si chiamano anche cicli Come le istruzioni condizionali, i cicli sono controllati da espressioni

Dettagli

La classe java.lang.object

La classe java.lang.object La classe java.lang.object In Java: Gerarchia di ereditarietà semplice Ogni classe ha una sola super-classe Se non viene definita esplicitamente una super-classe, il compilatore usa la classe predefinita

Dettagli

Esempio 2: Subtyping

Esempio 2: Subtyping Esempio 2: Subtyping 22 Subclassing e subtyping Fino ad ora abbiamo trattato l ereditarietà come strumento che consente il riuso flessibile di classi già esistenti mediante l aggiunta o la ridefinizione

Dettagli

Richiami di Fondamenti di Informatica - 1

Richiami di Fondamenti di Informatica - 1 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 2 Richiami di Fondamenti di Informatica - 1 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf1/ Richiami di FdI-1

Dettagli

Le command line di Java

Le command line di Java Le command line di Java Esercitazioni di Programmazione 2 Novella Brugnolli brugnoll@science.unitn.it Ambiente di lavoro Per compilare ed eseguire un programma Java abbiamo bisogno di: The JavaTM 2 Platform,

Dettagli