JAVA Introduzione a Java Paolo Bison Fondamenti di Informatica 1 A.A. 2003/04 “Java: the elegant simplicity of C++ and the blazing speed of Smalltalk.” Università di Padova Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.2/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.1/19 Caratteristiche Perchè Java linguaggio OO ibrido basato sul C dinamico robusto e sicuro gestione della memoria relativamente performante interpretato (Virtual Machine) portabile tipizzato classi base ereditarietà singola + interfacce networking Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.3/19 Ambiente di sviluppo ciclo di sviluppo edit compile Paradigma di programmazione Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.4/19 procedurale (livello base) tipi primitivi ed istruzioni run strumenti Sun Java 2 SDK Integrated Development Enviroment (IDE) BlueJ orientato agli oggetti classi browser delle classi docs html + browser WWW Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.6/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.5/19 Cos’è un programma Java ? Sintassi e semantica class E [ integer x ] J. Gosling, B. Joy, G. Steele, G. Bracha, class E Java Language Specification Second Edition int x; Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.7/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.8/19 Espressioni ed Istruzioni Alcuni operatori espressione definisce un valore che si ottiene valutando l’espressione (valore di ritorno) formata da costanti, variabili, operatori ed espressioni elemento tipizzato unari +espr -espr istruzione definisce un azione formata da keywords, espressioni ed istruzioni non ritorna un valore relazionali moltiplicativi * / % additivi + - = = uguaglianza == != assegnazione = Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.9/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.10/19 <FieldDeclaration> Classe unità di programmazione in Java dichiarazioni delle variabili di stato dell’oggetto struttura sintattica class <Identifier> { <FieldDeclaration> <MethodDeclaration> } struttura sintattica <Type> <IdentifierList> ; Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.12/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.11/19 Tipo Interi tipi primitivi interi reali caratteri logici byte -128 : 127 short -32768 : 32767 int -214147483648 : 2147483647 classi long -9223372036854775808 : 9223372036854775807 rappresentazione valori interi operatori sugli interi + - * / % costanti 0 | 0x | 0X seq cifre l|L 123 0XFFF 29L 0377 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.13/19 Logici Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.14/19 <MethodDeclaration> boolean dichiarazione dei metodi valori di verità sintassi operatori di relazione ed uguaglianza costanti true false <Type> <Identifier> ( <FormalParList> ) { <body> } <tipo>: primitivo, classe,void <FormalParList>: lista di identificatori con il tipo Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.15/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.16/19 Metodo Istruzioni <istr> I <body> dichiarazioni variabili locali (ambito di validità) istruzioni valore di ritorno di un metodo return <espressione> ; espressione seguita da ; assegnazione <id>=<espr>; condizionale if (<espr>) <istr> [ else <istr>] Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.17/19 Istruzioni <istr> II cicli while ( <espr>) <istr> do <istr> while ( <espr>) blocco sequenza di istruzioni tra { } Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.19/19 Introduzione a Java, Paolo Bison, A.A. 2003-04, 2003-10-14 – p.18/19