Programmazione Java (Applicazioni e Applet )

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Programmazione Java (Applicazioni e Applet )"

Transcript

1 Programmazione Java (Applicazioni e Applet ) Prof. Flavio Cerini Dopo aver installato il JDK 1.4.1_01 e inserito il percorso della cartella \bin nel PATH si possono provare i seguenti programmi funzionanti. Creare una cartella di nome java. All interno della cartella scrivere con un editor ( Notepad opp Editplus) i programmi sottoelencati ( file.java) Dal prompt del DOS si compila il file java. es C:\java> javac file.java ; si ottiene così un bytecode (file.class) Dal prompt del DOS si interpreta il file.class; es. C:\java\java file.class Il nome del file deve essere uguale a quello della classe 1) public class CiaoMondo public static void main(string[] args) System.out.println("Ciao Mondo!!!"); 2) class primo public static void main(string[] args) System.out.println("Ciao come va il primo programma Java?"); 3) Applet import java.applet.*; public class appletciao extends Applet public void paint(graphics g) g.drawstring("ciao da Applet!!!",20,20); <TITLE> Pagina con Applet Ciao</TITLE>!--Invece di APPLET si può usare OBJECT e si possono evitare le virgolette -- <APPLET CODE ="appletciao.class" WIDTH = 200 HEIGHT = 100!--CODEBASE = "http://nome_server/cartella_contenente_applet" -- >!--Aggiungere quanto commentato nella riga precedente nel caso l'applet sia su di un Server remoto--!--ovviamente la Cartella_Contenente_Applet deve essere nella cartella del Server es. Htdocs -- Autore Flavio Cerini 1

2 4) //importo la classe Graphics import java.awt.graphics; public class linea extends java.applet.applet public void paint(graphics g) //disegno la linea g.drawline(60,100,130,200); <TITLE> Pagina con Applet Linea</TITLE> <APPLET CODE ="linea.class" WIDTH = 300 HEIGHT = 300!--CODEBASE = "http://nome_server/cartella_contenente_applet" -- >!--Aggiungere quanto commentato nella riga precedente nel caso l'applet sia su di un Server remoto-- 5) import java.awt.graphics; public class triangolo extends java.applet.applet public void paint(graphics g) //disegno la linea g.drawline(60,100,130,200); g.drawline(130,200,200,100); g.drawline(200,100,60,100); <TITLE> Pagina con Applet Triangolo </TITLE> <APPLET CODE ="triangolo.class" WIDTH = 300 HEIGHT = 300!--CODEBASE = "http://nome_server/cartella_contenente_applet" -- >!--Aggiungere quanto commentato nella riga precedente nel caso l'applet sia su di un Server remoto-- Autore Flavio Cerini 2

3 6) import java.awt.graphics; public class rettangoli extends java.applet.applet public void paint(graphics g) g.drawrect(30,30,80,80); g.fillrect(140,30,80,80); g.drawroundrect(30,140,80,80,10,10); g.fillroundrect(140,140,80,80,30,30); <TITLE> Pagina con Applet Rettangoli </TITLE> <APPLET CODE ="rettangoli.class" WIDTH = 300 HEIGHT = 300!--CODEBASE = "http://nome_server/cartella_contenente_applet" -- >!--Aggiungere quanto commentato nella riga precedente nel caso l'applet sia su di un Server remoto-- 7) //importo la classe Graphics public class font extends java.applet.applet public void paint(graphics g) Font f=new Font("TimesRoman",Font.BOLD,26); g.setfont(f); g.drawstring("ecco la mia stringa",100,100); <TITLE> Font </TITLE> <APPLET CODE ="font.class" WIDTH = 400 HEIGHT = 200!--CODEBASE = "http://nome_server/cartella_contenente_applet" -- >!--Aggiungere quanto commentato nella riga precedente nel caso l'applet sia su di un Server remoto-- Autore Flavio Cerini 3

4 8) public class colore extends java.applet.applet public void paint(graphics g) setbackground(new Color(150,150,140)); //g.setcolor(color.white); //g.drawstring("scritta in bianco su sfondo grigio",60,60); g.setcolor(color.yellow); g.drawstring("scritta in giallo su sfondo grigio",60,60) <TITLE> COLORE </TITLE> <APPLET CODE ="colore.class" WIDTH = 300 HEIGHT = 200> 9) import java.applet.*; public class bottone extends Applet // creo il bottone con la sua etichetta Button b=new Button("Il mio primo bottone"); public void init() //aggiuno al pannello il bottone prima creato add(b); <TITLE> BOTTONE </TITLE> <APPLET CODE ="bottone.class" WIDTH = 400 HEIGHT = 200> Autore Flavio Cerini 4

5 10) import java.applet.*; public class textfield extends Applet // creo un campo di testo di lunghezza 40 caratteri TextField t = new TextField("Inizializzazione",40); String s = new String(); public void init() //aggiuno il TextField al pannello dell'applet add(t); <TITLE> Applet Textfield </TITLE> <APPLET CODE ="textfield.class" WIDTH = 400 HEIGHT = 200> 11) import java.applet.*; public class textarea extends Applet // creo una Textarea di 4 righe e 20 colonne TextArea prima = new TextArea("Contenuto dell'area 1",4, 20); // creo una Textarea di 5 righe e 30 colonne TextArea seconda = new TextArea("Contenuto dell'area 2",5, 30); String s = new String(); public void init() //le aggiungo al pannello dell'applet add(prima); add(seconda); Autore Flavio Cerini 5

6 <TITLE> Applet TextArea </TITLE> <APPLET CODE ="textarea.class" WIDTH = 400 HEIGHT = 200> 12) import java.applet.*; public class checkbox extends Applet Label l = new Label("Che lingue conosci?"); Checkbox c1 = new Checkbox("Inglese"); Checkbox c2 = new Checkbox("Francese"); Checkbox c3 = new Checkbox("Tedesco"); public void init() //aggiuno al pannello dell'applet add(l); add(c1); add(c2); add(c3); <TITLE> Applet Checkbox</TITLE> <APPLET CODE ="checkbox.class" WIDTH = 400 HEIGHT = 200> Autore Flavio Cerini 6

7 13) import java.applet.*; public class liste_sc extends Applet String[] sport = "Calcio", "Ginnastica", "Corsa", "Tennis","Nuoto","Basket","Pallavolo","Sci"; String[] preferiti = "Sport", "Documentari", "Serial", "Musica", "Informazione","Varietà", "Film"; // Visualizza quattro voci, permette la selezione multipla List l = new List(4, true); Choice c = new Choice(); Label l1= new Label("Che sport pratichi?"); Label l2= new Label("Che programmi TV preferisci?"); public void init() //Inserisco le voci nel componente List for (int i = 0; i<8; i++) l.additem(sport[i]); //Inserisco le voci del componente Choice for (int i=0 ;i<7 ;i++ ) c.additem(preferiti[i]); add(l1); add(l); add(l2); add(c); <TITLE> Applet Liste a scorrimento</title> <APPLET CODE ="liste_sc.class" WIDTH = 400 HEIGHT = 200> Autore Flavio Cerini 7

8 14) //importo la classe Graphics import java.applet.*; public class bottoni extends Applet public void init() int i=0; // decido il tipo di Layout setlayout(new BorderLayout()); //Uso le costanti North, South, East e West per sistemare i bottoni add("north", new Button ("Bottone num. "+i++)); add("south", new Button ("Bottone num. "+i++)); add("east", new Button ("Bottone num. "+i++)); add("west", new Button ("Bottone num. "+i++)); add("center", new Button ("Bottone num. "+i++)); <TITLE> Applet Bottoni</TITLE> <APPLET CODE ="bottoni.class" WIDTH = 400 HEIGHT = import java.applet.*; public class bottoni extends Applet public void init() int i=0; // decido il tipo di Layout setlayout(new FlowLayout()); //Uso le costanti North, South, East e West per sistemare i bottoni add(new Button ("Bottone num. "+i++)); add(new Button ("Bottone num. "+i++)); add(new Button ("Bottone num. "+i++)); add(new Button ("Bottone num. "+i++)); add(new Button ("Bottone num. "+i++)); Autore Flavio Cerini 8

9 <TITLE> Applet Bottoni</TITLE> <APPLET CODE ="bottoni.class" WIDTH = 400 HEIGHT = 200> 16) Programma che legge un file ( sorgente.txt) e lo copia in un altro file ( destinazione.txt ) import java.io.*; public class readfile public static void main(string[] args) throws IOException File input = new File("sorgente.txt"); File output = new File("destinazione.txt"); //apre stream di input e di output FileReader in = new FileReader(input); //stream in input FileWriter out = new FileWriter(output); //stream di output int carattere; //legge il carattere uno alla volta e lo scrive sull'altro stream while ((carattere = in.read())!= -1) out.write(carattere); in.close(); out.close(); 17) import java.io.*; public class streamfile public static void main(string[] args) throws IOException File input = new File("sorgente.txt"); File output = new File("destinazione.txt"); //apre stream di input e di output FileInputStream in = new FileInputStream(input); //stream in input FileOutputStream out = new FileOutputStream(output); //stream di output int carattere; //legge il carattere uno alla volta e lo scrive sull'altro stream while ((carattere = in.read())!= -1) out.write(carattere); in.close(); out.close(); Autore Flavio Cerini 9

10 18) Programma che legge da tastiera e scrive sul monitor import java.io.*; public class read_tast public static void main(string[] arg) throws Exception InputStreamReader Ireader; BufferedReader buffer; String inputline; Ireader=new InputStreamReader(System.in); buffer =new BufferedReader(Ireader); inputline=buffer.readline(); System.out.println(inputLine); 19) Programma che visualizza il risultato di vari operatori class operatori public static void main(string[ ] args) int y = 16; int Y = 8; float a = 4.3f; float c = 1.5f; short x = 12; System.out.println("x=" + x +", y=" + y); System.out.println("x+y=" + (x +y)); System.out.println("x-y=" + (x -y)); System.out.println("x/y=" + (x/y)); System.out.println("x%y=" + (x%y)); System.out.println("a=" + a +", c=" + c); System.out.println("valore di a/c=" + (a/c)); System.out.println("y =" + y +", Y =" + Y); System.out.println("La condizione y>y risulta =" + (y>y)); Autore Flavio Cerini 10

11 20) Programma che mette in evidenza le caratteristiche OOP del linguaggio Java class valore private int varist=0; valore() System.out.println("Sono nel costruttore della classe valore"); public void incrementa() varist++; public void stampa() System.out.println("Il valore della variabile di istanza: " +varist); public class test public static void main(string[ ] args) valore miooggetto=new valore(); miooggetto.incrementa(); miooggetto.stampa(); miooggetto.incrementa(); miooggetto.stampa(); 21) public class sommatoria private int somma=0; sommatoria aggiungi(int elemento) somma+=elemento; return this; void stampa() System.out.println(this.somma); public static void main(string[] args) sommatoria s = new sommatoria(); s.aggiungi(2).aggiungi(6).aggiungi(4).stampa(); Autore Flavio Cerini 11

12 22) Programma Java ad oggetti. Viene definita una classe Automobile e due sottoclassi: Utilitaria e AutoDaCorsa /* Programma Java con classe automobile e due sottoclassi autodacorsa ed utilitaria. Le sottoclassi ereditano automaticamente le variabili di istanza e i metodi della superclasseche ereditano dalla principale variabili e metodi. Si può notare che il metodo setvelocità è invocabile dagli oggetti ferrari e cinquecento ovviamente con valori distinti. Il metodo temperaturaalta delle due classi (utilitaria e autodacorsa) deve essere diverso. Per ottenere il diverso comportamento è stato riscritto il metodo nella definizione delle due sottoclassi. La Segnatura del metodo ( tipo di ritorno e la lista dei parametri compreso tipo e ordine ) è rimasta inalterata, è variato solo il comportamento. La tecnica che consente di modificare il comportamento di un metodo rispetto alla classe base si chiama OVERRIDING ed è uno dei meccanismi più potenti della programmazione ad oggetti (OOP). Diverso è il concetto per il metodo gettenutastrada che viene chiamato anche con diversi parametri. La riscrittura di un metodo della classe base in una clase derivata modificando la segnatura del metodo stesso si chiama OVERLOADING.*/ class automobile // Classe auto generica int velocita=0; // variabili di istanza float tenutastrada=0f; int temperaturamax=100; void setvelocita(int velocita) //metodo imposta velocità this.velocita=velocita; int getvelocita() //metodo velocità System.out.println(this.velocita); return this.velocita; void gettenutastrada() //metodo tenutastrada System.out.println("metodo gettenutastrada di automobile"); void temperaturaalta(int temperatura) //metodo temperatura System.out.println("attenzione temperatura alta"); class autodacorsa extends automobile // Classe auto da corsa ( extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Controllo strumentazione"); System.out.println("Fermata ai box"); void gettenutastrada() // metodo tenutastrada float coeff_asfalto = 0.001f; this.tenutastrada=coeff_asfalto*this.velocita; System.out.println(this.tenutaStrada); Autore Flavio Cerini 12

13 class utilitaria extends automobile // Classe utilitaria (extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Ferma alla prima sosta"); System.out.println("Controllo temperatura acqua radiatore"); void gettenutastrada(int mantostradale) // metodo tenutastrada float coeff_terra = 0.034f; float coeff_asfalto=0.03f; if (mantostradale ==0) this.tenutastrada=coeff_asfalto*this.velocita; else this.tenutastrada=coeff_terra*this.velocita; System.out.println(this.tenutaStrada); public class auto // classe auto che contiene il metodo main public static void main(string[ ] args) autodacorsa ferrari= new autodacorsa(); utilitaria cinquecento = new utilitaria(); ferrari.setvelocita(200); cinquecento.setvelocita(100); ferrari.gettenutastrada(); cinquecento.gettenutastrada(1); ferrari.getvelocita(); cinquecento.getvelocita(); ferrari.temperaturaalta(123); cinquecento.temperaturaalta(119); 23) Stesso programma precedente con evidenziata caratteristica del Polimorfismo /* Programma Java con classe automobile e due sottoclassi autodacorsa ed utilitaria. Le sottoclassi ereditano automaticamente le variabili di istanza e i metodi della superclasseche ereditano dalla principale variabili e metodi.*/ Autore Flavio Cerini 13

14 class automobile // Classe auto generica int velocita=0; // variabili di istanza float tenutastrada=0f; int temperaturamax=100; void setvelocita(int velocita) //metodo imposta velocità this.velocita=velocita; int getvelocita() //metodo velocità System.out.println(this.velocita); return this.velocita; void gettenutastrada() //metodo tenutastrada System.out.println("metodo gettenutastrada di automobile"); void temperaturaalta(int temperatura) //metodo temperatura System.out.println("attenzione temperatura alta"); class autodacorsa extends automobile // Classe auto da corsa ( extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Controllo strumentazione"); System.out.println("Fermata ai box"); void gettenutastrada() // metodo tenutastrada float coeff_asfalto = 0.001f; this.tenutastrada=coeff_asfalto*this.velocita; System.out.println(this.tenutaStrada); class utilitaria extends automobile // Classe utilitaria (extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Ferma alla prima sosta"); System.out.println("Controllo temperatura acqua radiatore"); Autore Flavio Cerini 14

15 void gettenutastrada(int mantostradale) // metodo tenutastrada float coeff_terra = 0.034f; float coeff_asfalto=0.03f; if (mantostradale ==0) this.tenutastrada=coeff_asfalto*this.velocita; else this.tenutastrada=coeff_terra*this.velocita; System.out.println(this.tenutaStrada); public class auto_pol // classe auto che contiene il metodo main public static void main(string[] args) polimorfismo ) //Math.random() restituisce un double tra 0 e 1.0 automobile autovettura; // definisco autovettura appartenente alla classe automobile if((math.random()) > 0.50 ) // autovettura diventa una auto da corsa ( Passaggio fondamentale per il autovettura = new autodacorsa(); System.out.println(" Auto da corsa "); else // autovettura diventa una utilitaria autovettura = new utilitaria(); System.out.println(" Utilitaria "); // richiamo ora il metodo sull'oggetto non sapendo a che classe appartenga // notare che il risultato è giusto! autovettura.temperaturaalta(126); // notare che la scelta viene fatta a Run Time 24) Stesso programma con vettore di oggetti /* Programma Java con classe automobile e due sottoclassi autodacorsa ed utilitaria. Le sottoclassi ereditano automaticamente le variabili di istanza e i metodi della superclasseche ereditano dalla principale variabili e metodi.*/ Autore Flavio Cerini 15

16 class automobile // Classe auto generica int velocita=0; // variabili di istanza float tenutastrada=0f; int temperaturamax=100; void setvelocita(int velocita) //metodo imposta velocità this.velocita=velocita; int getvelocita() //metodo velocità System.out.println(this.velocita); return this.velocita; void gettenutastrada() //metodo tenutastrada System.out.println("metodo gettenutastrada di automobile"); void temperaturaalta(int temperatura) //metodo temperatura System.out.println("attenzione temperatura alta"); class autodacorsa extends automobile // Classe auto da corsa ( extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Controllo strumentazione"); System.out.println("Fermata ai box"); void gettenutastrada() // metodo tenutastrada float coeff_asfalto = 0.001f; this.tenutastrada=coeff_asfalto*this.velocita; System.out.println(this.tenutaStrada); class utilitaria extends automobile // Classe utilitaria (extends fa ereditare ) void temperaturaalta(int temperatura) // metodo temperatura System.out.println("Ferma alla prima sosta"); System.out.println("Controllo temperatura acqua radiatore"); Autore Flavio Cerini 16

17 void gettenutastrada(int mantostradale) // metodo tenutastrada float coeff_terra = 0.034f; float coeff_asfalto=0.03f; if (mantostradale ==0) this.tenutastrada=coeff_asfalto*this.velocita; else this.tenutastrada=coeff_terra*this.velocita; System.out.println(this.tenutaStrada); public class vettauto // classe auto che contiene il metodo main public static void main(string[ ] args) else //Math.random() restituisce un double tra 0 e 1.0 //dichiaro il vettore di oggetti automobile automobile[ ] vetture = new automobile[5]; // costruzione del vettore di oggetti eterogenei for(int i=0;i<5;i++) if(math.random()>0.5) vetture[i] = new autodacorsa(); vetture[i] =new utilitaria(); //Invocazione dei metodi sugli oggetti del vettore for(int i=0; i<5; i++) vetture[i].temperaturaalta(200); Autore Flavio Cerini 17

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione

Dettagli

I Canvas. import java.awt.*; import javax.swing.*; public class Graf{ public Graf () { JFrame f = new JFrame("Finestra"); // crea frame invisibile

I Canvas. import java.awt.*; import javax.swing.*; public class Graf{ public Graf () { JFrame f = new JFrame(Finestra); // crea frame invisibile I Canvas Tra i vari contenitori Java il Canvas (area di disegno o tela) è una semplice superficie di disegno particolarmente utile per visualizzare immagini o per effettuare altre operazioni grafiche.

Dettagli

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

R. Focardi 2002 Laboratorio di Ingegneria del Software Slide 1. Applicazioni = programmi stand-alone

R. Focardi 2002 Laboratorio di Ingegneria del Software Slide 1. Applicazioni = programmi stand-alone Il linguaggio Java Nato nel maggio 95 (James Gosling & al.) Orientato ad oggetti, basato sulle classi, concorrente Fortemente tipato: distinzione chiara tra errori statici ed errori dinamici Ad alto livello:

Dettagli

INTRODUZIONE INTRODUZIONE JAVA JAVA

INTRODUZIONE INTRODUZIONE JAVA JAVA INTRODUZIONE INTRODUZIONE Lo sviluppo di applicazioni complesse porta a costruire moduli software sempre più potenti e versatili, che possano essere riutilizzati in numerosi progetti I linguaggi ad oggetti

Dettagli

Struttura di un programma Java

Struttura di un programma Java Struttura di un programma Java Un programma in Java è un insieme di dichiarazioni di classi. Una classe non può contenere direttamente delle istruzioni, ma può contenere la dichiarazione di metodi, che

Dettagli

Gestione delle Eccezioni

Gestione delle Eccezioni Gestione delle Eccezioni Condizioni di Errore Una condizione di errore in un programma può avere molte cause Errori di programmazione Divisione per zero, cast non permesso, accesso oltre i limiti di un

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

Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria

Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria Geom. Giofrè Vincenzo Pasquale Il manuale per la facoltà di ingegneria Copyright 1992 2006 SystemGVP Presentazione Il linguaggio Java nasce nel 1995 dai programmatori della Sun Microsystem. La sua popolarità

Dettagli

Esercizi della lezione 5 di Java

Esercizi della lezione 5 di Java Esercizi della lezione 5 di Java Esercizio 5 Create il tipo di dato Counter dell Esercizio 1 come sottoclasse del tipo di dato SimpleCounter. Esercizio 1 Create un tipo di dato Counter che abbia: un valore

Dettagli

Java: la libreria delle classi

Java: la libreria delle classi Java: la libreria delle classi Applet anatomia di un applet cenni di html La libreria JDBC per l accesso ai database il package java.sql 213 Applet Un applet è una applicazione Java che ha una forma particolare

Dettagli

Corso di Laurea in Informatica e Comunicazione Digitale. a.a. 2006-2007. Interazione Uomo-Macchina. Introduzione a Java.

Corso di Laurea in Informatica e Comunicazione Digitale. a.a. 2006-2007. Interazione Uomo-Macchina. Introduzione a Java. Corso di Laurea in Informatica e Comunicazione Digitale a.a. 2006-2007 Interazione Uomo-Macchina Introduzione a Java Seconda Parte Irene Mazzotta Giovanni Cozzolongo Vincenzo Silvetri 1 Richiami: Java

Dettagli

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); } import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda * @author D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda * @version 26/02/2010 * VETTORE DINAMICO

Dettagli

20 - Input/Output su File

20 - Input/Output su File 20 - Input/Output su File 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

Dettagli

Con il pulsante Start si introducono palline che rimbalzano in un area di disegno fino a che non è terminato il loro ciclo di vita (1000 movimenti).

Con il pulsante Start si introducono palline che rimbalzano in un area di disegno fino a che non è terminato il loro ciclo di vita (1000 movimenti). Rimbalzi. import java.awt.*; import java.awt.event.*; import java.applet.applet; public class Bounce extends Applet implements ActionListener { private Canvas canvas; private Button b1; private Button

Dettagli

Esercizi Java. class somma2 { static int somma(int a,int b) {return a+b; }

Esercizi Java. class somma2 { static int somma(int a,int b) {return a+b; } Java è un linguaggio di programmazione c indipendente dalla piattaforma, ovvero un linguaggio di programmazione che permette di compilare i programmi una volta sola e di installarli su computer che usano

Dettagli

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015 Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle

Dettagli

Gestione di errori e situazioni eccezionali. Gestione delle eccezioni. Gestione tradizionale di errori e situazioni eccezionali (2)

Gestione di errori e situazioni eccezionali. Gestione delle eccezioni. Gestione tradizionale di errori e situazioni eccezionali (2) Gestione di errori e situazioni eccezionali Gestione delle eccezioni Una procedura (utente o di libreria) deve poter segnalare l impossibilità di produrre un risultato significativo o la propria terminazione

Dettagli

TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet

TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE APPLICAZIONI WEB Linguaggio Java: Le Applet Prof. Franco Zambonelli Lucidi realizzati in collaborazione

Dettagli

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP (VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP D (FKR&OLHQWH6HUYHU Sviluppare un applicazione C/S in cui: il server attende una connessione da parte del client (su MDYDQHW6HUYHU6RFNHW), usa la

Dettagli

Prova d Esame 07.04.2006 Compito A

Prova d Esame 07.04.2006 Compito A DOMANDA 1 (6 punti) Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { public static String s1 = "Ciao"; protected int n; public General() { n = 1; public

Dettagli

APPLICAZIONI & APPLET

APPLICAZIONI & APPLET APPLICAZIONI & APPLET Java è un ottimo linguaggio per costruire applicazioni anche non per Internet anche non grafiche ma si è diffuso storicamente, e trae forza, dal concetto di applet come piccola (?)

Dettagli

Jav@Lab Il linguaggio Java I file sequenziali

Jav@Lab Il linguaggio Java I file sequenziali Jav@Lab Il linguaggio Java I file sequenziali Input e Output Secondo i canoni dei linguaggi di programmazione "procedurali" il concetto di input e output è strettamente legato al tipo di dispositivo esterno

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA1 1.3 - Le strutture di controllo 1 Prerequisiti Istruzioni semplici Strutture di controllo Scittura di semplici applicazioni Java 2 1 Introduzione In molti casi le

Dettagli

Prova d Esame 07.04.2006 Compito B

Prova d Esame 07.04.2006 Compito B DOMANDA 1 (6 punti) Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { public static String s1 = "ciao"; protected int n; public General() { n = 3; public

Dettagli

Applet. Contenuti secondo modulo. Linguaggi di Programmazione II. Dove e come trovarmi. Introduzione. Sito Web

Applet. Contenuti secondo modulo. Linguaggi di Programmazione II. Dove e come trovarmi. Introduzione. Sito Web Anno Accademico 2003/04 Docente modulo 2: Contenuti secondo modulo Applet e grafica (cap. 4) Gestione di eventi (cap.9) Interfacce utente grafiche (cap. 11) Ereditarietà (cap. 10) Vettori e array (cap.

Dettagli

10.4. La classe File e gli attributi di directory e file

10.4. La classe File e gli attributi di directory e file pag.143 10.4. La classe File e gli attributi di directory e file Questa classe, molto utile per operare con i file su disco, consente di accedere alle directory, verificare e acquisire le caratteristiche

Dettagli

Operazioni di input/output. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Operazioni di input/output. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Operazioni di input/output Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni Input /Output introduzione Per ottenere delle informazioni un programma apre un flusso (Stream)

Dettagli

JAVA INTRODUZIONE C++ JDK e JRE API IDE (BLUEJ) JAVA Introduzione. Versioni e IDE DIAPOSITIVA 2 ALESSANDRO URSOMANDO

JAVA INTRODUZIONE C++ JDK e JRE API IDE (BLUEJ) JAVA Introduzione. Versioni e IDE DIAPOSITIVA 2 ALESSANDRO URSOMANDO JAVA JAVA Introduzione INTRODUZIONE C++ JDK e JRE API IDE (BLUEJ) Cross Platform Web Dinamico Versioni e IDE DIAPOSITIVA 2 1 JAVA La programmazione orientata agli oggetti JAVA La programmazione OOP Nascita

Dettagli

L interfaccia grafica con Java

L interfaccia grafica con Java L interfaccia grafica con Java 1/24 L interfaccia utente serve per la comunicazione tra utente e programma Distinguiamo le interfacce tra quelle a caratteri e quelle grafiche Le GUI (Graphical user interface)

Dettagli

Progetto Automi e Linguaggi Parser svliluppato con JLex e cup

Progetto Automi e Linguaggi Parser svliluppato con JLex e cup Progetto Automi e Linguaggi Parser svliluppato con JLex e cup Sviluppato da Santoro Carlo Maurizio Matricola:0108/528 Sviluppo terminato il: 18/06/06 TRACCIA DEL PROGETTO Si costruisca, utilizzando la

Dettagli

Input e Output in Java

Input e Output in Java Input e Output in Java Stream Redirecting Scomposizione dell input Uso di file Set di caratteri 1 Inserimento dati e test Riconsideriamo la versione iniziale della classe DataSet usata per illustrare le

Dettagli

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio

Dettagli

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata.

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata. Chat Si ha un server in ascolto sulla porta 4444 Quando un client richiede la connessione, il server risponde con: Connessione accettata. Nome: Il client deve rispondere con lo user name A questo punto

Dettagli

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008 Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 6 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Programmare in Java. Olga Scotti

Programmare in Java. Olga Scotti Programmare in Java Olga Scotti Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale

Dettagli

Restrizioni per la sicurezza

Restrizioni per la sicurezza Applets Applet = programma Java che può essere invocato all interno di un file.html ed eseguito da un browser web, es. C:\Files> explorer MioFile.html un appletviewer, es. C:\Files> appletviewer MioFile.html

Dettagli

Parcheggio.rtf 1/8 6 gennaio 2009. Prova di programmazione: parcheggio a pagamento

Parcheggio.rtf 1/8 6 gennaio 2009. Prova di programmazione: parcheggio a pagamento Parcheggio.rtf 1/8 6 gennaio 2009 Prova di programmazione: parcheggio a pagamento Si sviluppi il codice per la gestione di un parcheggio a pagamento mediante la classe Parcheggio, che ospita le auto rappresentate

Dettagli

Operazioni di scrittura e lettura con periferici in linguaggio Java

Operazioni di scrittura e lettura con periferici in linguaggio Java Operazioni di scrittura e lettura con periferici in linguaggio Java Flussi logici (stream) di output Operazione di scrittura a monitor con uso di stream (flusso logico) di output RAM System.out.println

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Parte II: Reti di calcolatori Lezione 10

Parte II: Reti di calcolatori Lezione 10 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 10 Giovedì 3-04-2014 1 Reti per la distribuzione

Dettagli

In Java esistono tre tipi di programmi

In Java esistono tre tipi di programmi Applet Introduzione In Java esistono tre tipi di programmi Applicazioni da console Eseguiti da linea di comando Applicazioni grafiche Usano finestre, pulsanti, menu, caselle di controllo, etc Applet Contenuti

Dettagli

Oggi. Programmazione e laboratorio: introduzione al corso. Docenti: laboratorio. Docenti: teoria. Il corso. Orario.

Oggi. Programmazione e laboratorio: introduzione al corso. Docenti: laboratorio. Docenti: teoria. Il corso. Orario. Programmazione e laboratorio: introduzione al corso Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione per

Dettagli

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio Dipartimento di Informatica, Università degli Studi di Verona Corso di Programmazione per Bioformatica lezione del 30 maggio 2014 Introduzione Un programma diviso in sezioni distinte Un approccio alla

Dettagli

Uno stream o flusso di dati o canale è un percorso di comunicazione tra la sorgente di una certa informazione e la sua destinazione.

Uno stream o flusso di dati o canale è un percorso di comunicazione tra la sorgente di una certa informazione e la sua destinazione. pag.112 9. Input e output Nell informatica classica il concetto di input e output era strettamente legato all uso dei dispositivi esterni di memorizzazione (dischi, nastri) e quindi al concetto di file,

Dettagli

PROGETTO LAUREE SCIENTIFICHE

PROGETTO LAUREE SCIENTIFICHE 1 PROGETTO LAUREE SCIENTIFICHE Write once, write everywhere è il motto dei progettisti del linguaggio java. Infatti questo linguaggio è il risultato dell esigenza di programmare per quello che si può chiamare

Dettagli

Cifratura simmetrica

Cifratura simmetrica Cifratura Cifratura simmetrica Alice canale insicuro Bob 2 Cifratura simmetrica m Algoritmo di decifratura m Alice canale insicuro Algoritmo di cifratura Bob 3 Cifrari simmetrici chiave privata k chiave

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

Parte II: Reti di calcolatori Lezione 12

Parte II: Reti di calcolatori Lezione 12 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Parte II: Reti di calcolatori Lezione 12 Giovedì 16-04-2015 1 Confronto architetture C/S e

Dettagli

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL

Università degli Studi di Modena e Reggio Emilia. Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB. Http con java, URL Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria Reggio Emilia CORSO DI TECNOLOGIE E APPLICAZIONI WEB Http con java, URL Ing. Marco Mamei Anno Accademico 2004-2005 M. Mamei - Tecnologie

Dettagli

Classi astratte. Master in Web Technology e Security luglio - settembre 2000. Interfacce

Classi astratte. Master in Web Technology e Security luglio - settembre 2000. Interfacce Master in Web Technology e Security luglio - settembre 2000 JAVA Alberto Martelli Parte III Programmazione grafica Classi astratte Vogliamo implementare un algoritmo di ordinamento di un array che sia

Dettagli

Input/Output in Java

Input/Output in Java Corso Java Input/Output in Java Docente: Dott. Marco Bianchi Slide realizzate da Ing. A.Bei, Dott. M.Bianchi, Dott. F.Lombardi Input/Output in Java Per effettuare operazioni di I/O in Java è possibile

Dettagli

Definizione di classi con array di oggetti

Definizione di classi con array di oggetti Definizione di classi con array di oggetti 1. (Esame scritto del 18/9/2002, Esercizio 6.) La banca dati di un agenzia assicurativa per auto è caratterizzata da un insieme di polizze di assicurazioni per

Dettagli

Flussi, lettori e scrittori

Flussi, lettori e scrittori Flussi, lettori e scrittori Per sequenze di byte, InputStream, OutputStream e loro sottoclassi. Es: InputStream in = ; int next = in. read(); if (next!= -1) byte b = (byte) next; Per sequenze di caratteri,

Dettagli

Unità B3 Strutture di controllo

Unità B3 Strutture di controllo (A) CONOSCENZA TERMINOLOGICA Dare una breve descrizione dei termini introdotti: I/O su console Package Blocco di controllo Oggetto System.out Oggetto System.in Oggetto Tastiera Metodo readline() Strutture

Dettagli

Introduzione al linguaggio Java. Applicazioni ed Applets: come scriverli e farli girare. Caratteristiche originali e differenze con C / C++.

Introduzione al linguaggio Java. Applicazioni ed Applets: come scriverli e farli girare. Caratteristiche originali e differenze con C / C++. Introduzione al linguaggio Java Cosa c è di nuovo in Java? Java ed Internet. Applicazioni ed Applets: come scriverli e farli girare. Caratteristiche originali e differenze con C / C++. Dove trovare informazioni?

Dettagli

ProgettAzione tecnologie in movimento - V anno Unità 4 - Realizzare applicazioni per la comunicazione in rete

ProgettAzione tecnologie in movimento - V anno Unità 4 - Realizzare applicazioni per la comunicazione in rete ProgettAzione tecnologie in movimento - V anno Unità 4 - Realizzare applicazioni per la comunicazione in rete Compito in classe proposto Realizzare un applicazione C/S per trasferire al Client il contenuto

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

Java: Compilatore e Interprete

Java: Compilatore e Interprete Java: Compilatore e Interprete Java Virtual Machine Il bytecode non è Linguaggio Macchina. Per diventarlo, deve subire un ulteriore trasformazione che viene operata dall interprete Java in modalità JIT

Dettagli

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD

La prima applicazione Java con NetBeans IDE. Dott. Ing. M. Banci, PhD La prima applicazione Java con NetBeans IDE Dott. Ing. M. Banci, PhD Creare la prima applicazione 1. Creare un progetto: Quando si crea un progetto IDE occorre creare un ambiente nel quale costruire e

Dettagli

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Reflection in Java 1 Reflection Riflessione

Dettagli

Appunti di Informatica www.mimmocorrado.it 1

Appunti di Informatica www.mimmocorrado.it 1 Installare Java Il programma può essere scaricato dal seguente indirizzo: http://www.java.com/it/download/windows_ie.jsp?locale=it&host=www.java.com Per installare la JDK è necessario: 1. scaricare il

Dettagli

! Programmazione strutturata. ! OO: TDA, scambio messaggi, eredità, polimorfismo, OO in Java. ! Rassegna API. ! Documentazione Javadoc delle API

! Programmazione strutturata. ! OO: TDA, scambio messaggi, eredità, polimorfismo, OO in Java. ! Rassegna API. ! Documentazione Javadoc delle API Riassunto Applet (e altro dell AWT ) Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@uniud.it Programmazione, lezione 22 19 maggio

Dettagli

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità:

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità: 7 Esercitazione (svolta): due possibilità: Java RMI: callback Molte applicazioni richiedono un meccanismo publish/subscribe I partecipanti (client) necessitano di notifiche da parte del coordinatore (server)

Dettagli

Corso di Reti di Calcolatori L-A

Corso di Reti di Calcolatori L-A Università degli Studi di Bologna Facoltà di Ingegneria Corso di Reti di Calcolatori L-A Esercitazione 2 (svolta) Socket Java con connessione Luca Foschini Anno accademico 2009/2010 Esercitazione 2 1 Architettura

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Il linguaggio di programmazione JAVA

Il linguaggio di programmazione JAVA Introduzione a JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it http://www.dii.unisi.it/~rigutini/

Dettagli

Introduzione alla programmazione in Java

Introduzione alla programmazione in Java Introduzione alla programmazione in Java 1 Programmare ad oggetti La programmazione come attività di creazione di modelli. I concetti di classe, oggetto e scambio di messaggi. Un primo esempio di programma

Dettagli

COMPITO DI LABORATORIO DI PROGRAMMAZIONE 2001-2002 17 Luglio 2002. Soluzione degli Esercizi

COMPITO DI LABORATORIO DI PROGRAMMAZIONE 2001-2002 17 Luglio 2002. Soluzione degli Esercizi COMPITO DI LABORATORIO DI PROGRAMMAZIONE 2001-2002 17 Luglio 2002 degli Esercizi ESERCIZIO 1. Si consideri il seguente frammento di codice in linguaggio Java: int i=0, j=0; int[][] a=b; boolean trovato=false;

Dettagli

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Programmazione Object Oriented in Java

Dettagli

Compute engine generici in RMI

Compute engine generici in RMI Compute engine generici in RMI Esempio: Calcolo del prodotto scalare Un unico server offre il servizio di calcolo del prodotto scalare tra vettori di interi Un client richiede al server il calcolo del

Dettagli

Java Applet. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010

Java Applet. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2009-2010 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Java Applet 1 Application VS Applet Una

Dettagli

Linguaggio Java. Testo adottato: S. Mizzaro, Introduzione alla programmazione con il linguaggio Java.

Linguaggio Java. Testo adottato: S. Mizzaro, Introduzione alla programmazione con il linguaggio Java. Linguaggio Java Testo adottato: S. Mizzaro, Introduzione alla programmazione con il linguaggio Java. Altri testi consigliati: G. Pighizzini, M. Ferrari, Dai fondamenti agli oggetti Addison Wesley, 2005.

Dettagli

Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II

Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II Appunti dei corsi di Programmazione di Rete Sistemi di elaborazione: Reti II PROF. G. BONGIOVANNI 0) INTRODUZIONE AL LINGUAGGIO JAVA PER PROGRAMMATORI C++...2 0.1) Caratteristiche principali... 2 0.1.1)

Dettagli

Outline. Programmazione ad oggetti in Java. La programmazione ad oggetti Classi e istanze Associazioni fra classi Incapsulamento Costruttori

Outline. Programmazione ad oggetti in Java. La programmazione ad oggetti Classi e istanze Associazioni fra classi Incapsulamento Costruttori Programmazione ad oggetti in Java Daniela Micucci Outline La programmazione ad oggetti Classi e istanze Associazioni fra classi Incapsulamento Costruttori 2 Programmazione ad oggetti in Java 1 OOP Java

Dettagli

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del

Dettagli

Applicazioni web. Parte 5 Socket

Applicazioni web. Parte 5 Socket Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Applicazioni web Parte 5 Michele Tomaiuolo tomamic@ce.unipr.it Protocolli Internet I computer

Dettagli

La programmazione: tradizionale vs Orientata agli Oggetti (OOP)

La programmazione: tradizionale vs Orientata agli Oggetti (OOP) La programmazione: tradizionale vs Orientata agli Oggetti (OOP) In generale, nella soluzione di un problema si individuano dati e funzionalità (azioni) potendola implementare, a livello più semplice, in

Dettagli

Laboratorio di Informatica Lezione 4

Laboratorio di Informatica Lezione 4 Laboratorio di Informatica Lezione 4 Cristian Consonni 28 ottobre 2015 Cristian Consonni Laboratorio di Informatica, Lezione 4 1 / 42 Outline 1 Canali standard 2 Input da tastiera 3 Output 4 Esercizi (parte

Dettagli

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRGDWDJUDP

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRGDWDJUDP (VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRGDWDJUDP D /LQH&OLHQWH6HUYHU Sviluppare un applicazione C/S in cui: i inviano al server pacchetti (vuoti) che vengono interpretati dal server come richiesta

Dettagli

Programmazione ad oggetti

Programmazione ad oggetti DAIS Univ. Ca' Foscari Venezia Programmazione ad oggetti Samuel Rota Bulò Informazioni generali Docente: Samuel Rota Bulò @email: srotabul@dais.unive.it Homepage: http://www.dais.unive.it/~srotabul/ ooprogramming2012.html

Dettagli

introduzione alla programmazione in Java classi, oggetti ed altro

introduzione alla programmazione in Java classi, oggetti ed altro introduzione alla programmazione in Java classi, oggetti ed altro nomi file ed estensioni file.java: sorgenti Java creati con editor javac.exe: compilatore Java es.: per compilare il sorgente in pippo.java

Dettagli

RMI: metodi equals e hashcode

RMI: metodi equals e hashcode RMI: metodi equals e hashcode Per verificare se due oggetti remoti contengono gli stessi dati, la chiamata indirizzata al metodo equals() avrebbe bisogno di contattare i server dove si trovano gli oggetti

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

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Da JavaScript a Java

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Da JavaScript a Java Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Da JavaScript a Java Versione 3.4.05 Per la prima lezione in aula e la prima esercitazione in laboratorio 1 Da JavaScript a Java

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

Java Interfaccia Grafica

Java Interfaccia Grafica Java Interfaccia Grafica Testi di consultazione: a) core Java 1.1 (Volume I Fundamentals) Cay S. Horstmann, Gary Cornell, Prentice Hall, 1997. b) Java 1.2 Unleashed, Jamie Jaworski, Sams Publishing, 1998.

Dettagli

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4];

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4]; ARRAY BIDIMENSIONALI Si possono definire array di qualunque tipo di dato, quindi anche di altre array float [][] mx = new float[3][4]; ovvero.. (float []) [] mx = new float[3][4]; La loro motivazione (storica)

Dettagli

GESTIONE DEI PROCESSI

GESTIONE DEI PROCESSI Sistemi Operativi GESTIONE DEI PROCESSI Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in Java Concetto

Dettagli

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it Programmazione II Lezione 4 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 30/09/2011 1/46 Programmazione II Lezione 4 30/09/2011 Sommario 1 Esercitazione 2 Panoramica della Programmazione Ad Oggetti 3

Dettagli

Architettura Client-Server

Architettura Client-Server Architettura Client-Server 1. il client manda una richiesta al server 2. il server (in attesa) riceve la richiesta 3. il server esegue il servizio richiesto (generando un thread concorrente) 4. il server

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

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

Dettagli

3. La sintassi di Java

3. La sintassi di Java pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer

Dettagli

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50 Guida all uso dell ambiente di sviluppo 1 integrato o IDE JCreator LE 4.50 Inizializzazione: creazione del nuovo progetto e del file sorgente in ambiente JCreator Al lancio del programma si apre la finestra

Dettagli

Gestione delle eccezioni in Java

Gestione delle eccezioni in Java Gestione delle eccezioni in Java - Introduzione al concetto di eccezioni E possibile definire un eccezione come un situazione imprevista che il flusso di un applicazione può incontrare. È possibile gestire

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 Incapsulamento Polimorfismo e Overloading Ereditarietà e Overriding Esercizi svolti Esercizi proposti Paradigma OO Le

Dettagli

Informatica. Fondamenti della Programmazione in Java. Leonardo Vanneschi

Informatica. Fondamenti della Programmazione in Java. Leonardo Vanneschi Informatica Fondamenti della Programmazione in Java Leonardo Vanneschi 1 1. Fondamenti Il primo programma in Java Il programma che stampa a video una sequenza di caratteri (o stringa): class Esempio {

Dettagli

Utilizzo delle classi

Utilizzo delle classi Utilizzo delle classi I metodi costruttore ed il loro utilizzo. Alcune classi di ingresso e uscita 2 Classi ed Oggetti predefiniti Oggetti predefiniti Sono presenti nel programma Non è necessario crearli

Dettagli

Programmazione ad Oggetti: JAVA. Esercitazione

Programmazione ad Oggetti: JAVA. Esercitazione Programmazione ad Oggetti: JAVA Esercitazione Docente Ing. Mariateresa Celardo mariateresa.celardo@uniroma2.it Scrivere la classe Motorino che ha i seguenti attributi colore: una stringa indicante il colore

Dettagli