7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità:
|
|
|
- Beniamino Lazzari
- 9 anni fa
- Просмотров:
Транскрипт
1 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) Polling Callback (1) (2) Reti di calcolatori L-A Esercitazione n 7 svolta - 1 Reti di calcolatori L-A Esercitazione n 7 svolta - 2
2 Callback con Java RMI Callback: meccanismo che permette ad un client di essere notificato dal server al verificarsi dell evento per cui si è registrato e messo in attesa. Notifica del server = Stub Invocazione di un metodo remoto del client Invocazione di metodi remoti bidirezionale lookup Skeleton Remote Reference Layer RMI Registry Transport Layer bind Skeleton (1) (4) (2) (3) Stub Remote Reference Layer Come realizzare la callback Lato client: bisogna fornire il metodo remoto che il server deve invocare per fare la callback 1. definire l interfaccia remota del client, in cui viene dichiarato il metodo di callback invocato dal server 2. implementare l interfaccia remota del client, ovvero implementare il metodo di callback 3. istanziare l implementazione dell interfaccia remota del client e passarla al server che la utilizzarà per invocare il metodo remoto di callback Lato server: bisogna mantenere un riferimento al client su cui fare la callback 1. definire l interfaccia remota del server, come sempre, in particolare è necessario definire il metodo di de/registrazione che il client invoca per inviare al server il proprio riferimento remoto 2. implementare l interfaccia remota del server 3. istanziare l implementazione dell interfaccia remota del server e pubblicarla sul registry Reti di calcolatori L-A Esercitazione n 7 svolta - 3 Reti di calcolatori L-A Esercitazione n 7 svolta - 4
3 Esercizio: Chat Realizzare un applicazione che implementi una chat, in cui: Implementazione del client: Definizione dell interfaccia remota del client: public interface ChatInterface extends java.rmi.remote{ i client si registrano, mandano messaggi fino all inserimento dell EOF da tastiera, infine si cancellano e terminano; public String name() public void callback(string who_what) il server tiene traccia dei client registrati, per ogni nuova registrazione notifica a tutti i presenti nella room il nuovo ingresso, per ogni messaggio ricevuto notifica a tutti i presenti il messaggio con il mittente, per ogni uscita notifica a tutti i presenti l uscita. Ogni notifica viene effettuata invocando una callback. Implementazione dell interfaccia remota del client: public class ChatImpl extends UnicastRemoteObject implements ChatInterface { String my_name; public ChatImpl(String name) throws RemoteException { my_name=name; public String name() throws java.rmi.remoteexception { return my_name; public void callback(string who_what) throws java.rmi.remoteexception { who_what); Reti di calcolatori L-A Esercitazione n 7 svolta - 5 Reti di calcolatori L-A Esercitazione n 7 svolta - 6
4 Programma client: Creazione di una istanza di ChatImpl, che viene poi passata per riferimento remoto al server; il server utilizzerà tale riferimento per invocare il metodo remoto di callback: public class Chat { public static void main(string args[]) { String hostname = null; int RMIPort = -1; /* controllo argomenti (vedi sorgenti)... */ try { InputStreamReader is = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(is); String registryurl = "rmi://" +hostname+ ":" +portnum+"/chat"; /* recupero riferimento al server */ ChatInterface server_ref = (ChatInterface)Naming. lookup(registryurl); "Lookup completed " ); /* creazione istanza del client */ "What is your name?"); String name = br.readline(); ChatImpl client_ref = new ChatImpl(name); /* registrazione client-->ingresso chat room */ "Registering for chat"); server_ref.register(client_ref); /* ciclo di permanenza nella chat room */ "Enter messages, EOF to exit "); String message; while((message=br.readline())!=null){ server_ref.saysomething(message, client_ref); /* uscita dalla chat */ server_ref.unregister(client_ref); "Unregistered from chat."); System.exit(0); // end try catch (Exception e) { "Exception in Chat: " + e); System.exit(1); // end catch //end main //end class Reti di calcolatori L-A Esercitazione n 7 svolta - 7 Reti di calcolatori L-A Esercitazione n 7 svolta - 8
5 Implementazione del server: Definizione dell interfaccia remota del server; si noti che sono presenti sia il metodo per la de/registrazione dei client, sia il metodo per la pubblicazione dei messaggi: public interface ChatInterface extends Remote { public void register( public void saysomething(string message, public void unregister( Implementazione dell interfaccia remota del server: public class ChatImpl extends UnicastRemoteObject implements ChatInterface { private Vector clientlist; public ChatImpl() throws RemoteException { super( ); clientlist = new Vector(); /* metodo di registrazione: inserisce in una lista il client che vuole registrarsi */ public synchronized void register( if (!(clientlist.contains(client_ref))) { clientlist.addelement(client_ref); "Registered new client "); String callback_msg = "Entrance of "+client_ref.name()+"\n"; docallbacks(callback_msg); // end if else { "register: client already registered."); // else // end register /* metodo di invio di un messaggio */ public void saysomething(string message, throws java.rmi.remoteexception{ String callback_msg = client_ref.name()+ : +message+ \n ; docallbacks(callback_msg); // end saysomething Reti di calcolatori L-A Esercitazione n 7 svolta - 9 Reti di calcolatori L-A Esercitazione n 7 svolta - 10
6 /* metodo di cancellazione: elimina dalla lista il client che vuole cancellarsi */ public synchronized void unregister( if(clientlist.removeelement(client_ref)) { "Unregistered client "); String callback_msg = Exit of +client_ref.name()+ \n ; docallbacks(callback_msg); else { "unregister: client wasn't registered."); // end unregister /* metodo che fa la callback a tutti i client registrati */ private synchronized void docallbacks (String msg) "***** Callbacks execution *****\n"); for (int i = 0; i < clientlist.size(); i++){ ChatInterface next = (ChatInterface)clientList.elementAt(i); next.callback(msg); // end for // end docallbacks // end server class Programma server: Creazione e pubblicazione presso il registry di una istanza di ChatImpl: public class Chat { public static void main(string args[]) { InputStreamReader is = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(is); String registryurl; int RMIPortNum = -1; /* controllo argomenti (vedi sorgenti)... */ try{ startregistry(rmiportnum); /* istanziazione del server e pubblicazione sul registry */ ChatImpl server_ref = new ChatImpl(); registryurl = "rmi://localhost:"+ portnum +"/chat"; Naming.rebind(registryURL, server_ref); "Chat ready."); // end try catch (Exception re) { "Exception in Chat.main: "+re); System.exit(1); // end catch // end main Reti di calcolatori L-A Esercitazione n 7 svolta - 11 Reti di calcolatori L-A Esercitazione n 7 svolta - 12
7 /* metodo che verifica se c è già un registry attivo sull host e porta indicati, e se non c è lo crea */ private static void startregistry(int RMIPortNum) try { Registry registry = LocateRegistry.getRegistry(RMIPortNum); registry.list( ); catch (RemoteException e) { Registry registry = LocateRegistry.createRegistry(RMIPortNum); // end startregistry // end class Implementazione di LocateRegistry.getRegistry(String): public static Registry getregistry (String host) Registry registry = (Registry) sun.rmi.server.remoteproxy. getstub("sun.rmi.registry.registryimpl", ObjID.REGISTRY_ID, host, port); return registry; Implementazione di LocateRegistry.createRegistry(RMIPortNum) public static Registry createregistry(int port) return new sun.rmi.registry.registryimpl(port); Compilazione: Compilazione delle interfacce remote: javac ChatInterface.java javac ChatInterface.java Compilazione delle implementazioni delle interfacce, del client e del server: javac ChatImpl.java javac ChatImpl.java javac Chat.java javac Chat.java Compilazione con l rmi compiler delle implementazioni delle interfacce remote (N.B.: sia del server che del client!): rmic ChatImpl rmic ChatImpl per generare stub e skeleton: ChatImpl_Skel ChatImpl_Stub ChatImpl_Skel ChatImpl_Stub Reti di calcolatori L-A Esercitazione n 7 svolta - 13 Reti di calcolatori L-A Esercitazione n 7 svolta - 14
Organizzazione della lezione. Lezione 18 Remote Method Invocation - 6. (con callback) L accesso al registry per il rebind()
Organizzazione della lezione Lezione 18 Remote Method Invocation - 6 Vittorio Scarano Corso di Programmazione Distribuita (2003-2004) Laurea di I livello in Informatica Università degli Studi di Salerno
RMI. Java RMI RMI. G. Prencipe [email protected]
Java Remote Method Invocation -- RMI G. Prencipe [email protected] RMI RMI è una tecnologia JAVA che permette a una JVM di comunicare con un altra JVM per farle eseguire metodi È possibile che oggetti
Introduzione a Java Remote Method Invocation (RMI)
Introduzione a Java Remote Method Invocation (RMI) SAPIENZA Università di Roma Corso di Architetture Software Orientate ai Servizi E risuona il mio barbarico yawp sopra i tetti del mondo ( I sound my barbaric
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
Lezione n.10 LPR- Informatica Applicata RMI CallBacks
Università degli Studi di Pisa Lezione n.10 LPR- Informatica Applicata RMI CallBacks 15/5/2006 Laura Ricci RMI: IL MECCANISMO DELLE CALLBACK Meccanismo RMI comunicazione unidirezionale (dal client al server)
Java Remote Method Invocation
Java Remote Method Invocation Programmazione in Rete e Laboratorio Comunicazione distribuita Port1 Java VM1 Java VM2 Port 2 Matteo Baldoni Dipartimento di Informatica Universita` degli Studi di Torino
Esercizi su Java RMI. Progetto di Cliente / Servitore e supporto. Possibile tabella mantenuta dal server
Esercizi su Java RMI Progetto di Cliente / Servitore e supporto Un progetto RMI si deve basare sempre sulla interfaccia remota e sulle classi del cliente e del servitore più su alcune classi di supporto
Organizzazione della lezione. 15. Java Remote Method Invocation (3) Lo schema del Factory Design Pattern - 1. Factory design pattern
Organizzazione della lezione 15. Java Remote Method Invocation (3) Vittorio Scarano Corso di Programmazione Distribuita Laurea di I livello in Informatica Università degli Studi di Salerno Il design pattern
Programmazione di sistemi distribuiti
Programmazione di sistemi distribuiti I Sistemi Distribuiti, per loro natura, prevedono che computazioni differenti possano essere eseguite su VM differenti, possibilmente su host differenti, comunicanti
RMI Remote Method Invocation
RMI Remote Method Invocation [Pagina intenzionalmente vuota] (1 12 2004) slide 4:1/18 (p.106) Un applicazione RMI è un applicazione distribuita ad oggetti. Applicazione RMI tipica, strutturata in: server:
Registri RMI. Massimo Merro Univ. Verona Programmazione di Rete 90 / 247
Registri RMI Per poter interagire con un server remoto, un client deve essere in possesso di una sua referenza remota (ovvero un oggetto stub). Un servizio di Naming è una risorsa centralizzata che può
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
Esercitazione di Sistemi Distribuiti: Java RMI
Esercitazione di Sistemi Distribuiti: Java RMI Anno Accademico 2007-08 Marco Comerio [email protected] Richiami Teorici Oggetti distribuiti 2-16 Usuale organizzazione di un oggetto remoto con un
Programmazione distribuita
Programmazione distribuita 1 Architettura client-server È il modo classico di progettare applicazioni distribuite su rete Server offre un servizio "centralizzato" attende che altri (client) lo contattino
Activation In sintesi: è inutile avere attivi degli oggetti se non vengono utilizzati
Activation In generale i Sistemi ad oggetti distribuiti sono progettati per lavorare con oggetti persistenti. Dato che questi sistemi saranno composti da migliaia (forse milioni) di tali oggetti, sarebbe
(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
UnicastRemoteObject. Massimo Merro Programmazione di Rete 103 / 124
UnicastRemoteObject Java RMI fornisce diverse classi base per definire server remoti: UnicastRemoteObject < RemoteServer < RemoteObject dove A < B significa che A è una sottoclasse di B. UnicastRemotObject
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
SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica
SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Esercitazioni di PROGETTAZIONE DEL SOFTWARE (Corsi di Laurea in Ingegneria Informatica ed Automatica ed Ingegneria
RMI e Firewall. Una soluzione è offerta dal transport layer di RMI stesso
Firewall Ogni applicazione di rete, che opera fuori da quelli che sono i confini di una rete locale, incontra inevitabilmente i cosiddetti firewall Tipicamente i firewall bloccano tutto il traffico di
Socket & RMI Ingegneria del Software - San Pietro
Socket & RMI Ingegneria del Software - San Pietro Socket È possibile trattare la comunicazione di rete allo stesso modo con cui è possibile trattare la lettura da file. La classe Socket rappresenta la
Contesto e motivazioni Architettura e concetti di base Componenti di RMI RMIRegistry Interfacce, eccezioni e classi Lo sviluppo di una applicazione L
CEFRIEL Consorzio per la Formazione e la Ricerca in Ingegneria dell Informazione Politecnico di Milano Programmazione Object Oriented in Java Java Remote Method Invocation Docente: Diego Peroni CEFRIEL
Main System Monitor Keyboard
Composite 57 8. Composite (Gof pag. 163) 8.1. Descrizione Consente la costruzione di gerarchie di oggetti composti. Gli oggetti composti possono essere conformati da oggetti singoli, oppure da altri oggetti
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
Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni server
Versione 30.5.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/: applicazioni 1 La logica dei socket Abbiamo visto che un applicazione client si connette
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
Java RMI (Remote Method Invocation)
Java RMI (Remote Method Invocation) Accesso ad oggetti remoti In Java non sono possibili riferimenti remoti RPC in JAVA Le RMI introducono la possibilità di richiedere esecuzione di metodi remoti in JAVA
Comunicazione fra oggetti distribuiti
Comunicazione fra oggetti distribuiti RMI RPC invocazione di metodo remoto - gli oggetti remoti ricevono le RMI interfaccia remota meccanismo per la comunicazione cliente servente come primitiva di un
Mobilità di Codice. Massimo Merro Programmazione di Rete 128 / 144
Mobilità di Codice Abbiamo già visto come un dato host possa trasmettere un oggetto (serializzabile) ad un altro host. Quest ultimo potrà eseguire l oggetto pur non possedendo il bytecode della classe
appunti delle lezioni Architetture client/server: applicazioni server
Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture /: applicazioni 1 La logica dei Abbiamo visto che un applicazione si connette e comunica con un applicazione mediante
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
Remote Method Invocation (RMI)
(RMI) Remote Method Invocation (RMI) in Java. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@disi disi.unige.it Walter Cazzola Java: Remote
Java RMI: Esempio Completo di un Applicazione Distribuita
Java RMI: Esempio Completo di un Applicazione Distribuita Il Problema Produttore/Consumatore in Ambiente Distribuito* *a cura del Prof. L. Nigro, Università della Calabria Java RMI (Remote Method Invocation)
Ottava Esercitazione. introduzione ai thread java mutua esclusione
Ottava Esercitazione introduzione ai thread java mutua esclusione Agenda Esempio 1 Concorrenza in Java: creazione ed attivazione di thread concorrenti. Esercizio 2 da svolgere Concorrenza in Java: sincronizzazione
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 [email protected] Reflection in Java 1 Reflection Riflessione
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.
/** * 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
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
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 10 Strutture collegate - 2 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Strutture collegate - 2 1 Contenuti!Strutture
Specifica i tipi di oggetti a creare, utilizzando un istanza prototipo, e crea nuove istanze tramite la copia di questo prototipo.
Prototype 28 4. Prototype (GoF pag. 117) 4.1. Descrizione 4.2. Esempio Specifica i tipi di oggetti a creare, utilizzando un istanza prototipo, e crea nuove istanze tramite la copia di questo prototipo.
Servers Activatable. Massimo Merro Programmazione di Rete 166 / 193
Servers Activatable Nelle lezioni precedenti abbiamo detto che una referenza remota ad un server di tipo UnicastRemoteObject rimane valida finchè il server è in esecuzione. Quando il server termina, o
appunti delle lezioni Architetture client/server: applicazioni client
Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un esempio particolarmente
Programmazione di rete in Java
Programmazione di rete in Java Reti di calcolatori Una rete di calcolatori è un sistema che permette la condivisione di dati informativi e risorse (sia hardware sia software) tra diversi calcolatori. Lo
Programmare con le Socket TCP
Programmare con le Socket TCP Il Client deve contattare il server Il processo server deve già essere attivo Il server deve aver creato una socket che accetta la connessione del client ( socket di benvenuto
Sistemi Distribuiti Multiagente A.A.2010-11 Informatica Magistrale Università di Bari
Java RMI I lucidi che seguono sono stati prodotti sulla base dei seguenti riferimenti: - Sistemi Distribuiti Dip. Informatica (S.Pizzutilo) - Seminario Java RMI di G.Cozzolongo Java RMI: Remote Method
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
Sistemi Distribuiti. Anno Accademico 2005-06 Prof. Flavio De Paoli. Il modello ad oggetti
Sistemi Distribuiti Anno Accademico 2005-06 Prof. Flavio De Paoli 1 Il modello ad oggetti 2 Distributed Objects 2-16 Common organization of a remote object with client-side proxy. 3 Caratteristiche Oggetti
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
13. Chain of Responsibility
Chain of Responsibility 92 13. Chain of Responsibility (GoF pag. 223) 13.1. Descrizione Consente di separare il mittente di una richiesta dal destinario, in modo di consentire a più di un oggetto di gestire
La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete
La prima applicazione Java Programma MyFirstApplication Il programma visualizza una finestra vuota sullo schermo. Importo il package delle classi usate nel seguito. Dichiaro la classe MyFirstApplication
Programmare con le Socket
Programmare con le Socket Corso Reti ed Applicazioni Lab Sockets pag. 1 Programmare con le Socket TCP Il Client deve contattare il server - Il processo server deve già essere attivo - Il server deve aver
Corso di programmazione di sistemi mobile 1. Android. Google Cloud Messaging
Corso di programmazione di sistemi mobile 1 Android Google Cloud Messaging Corso di programmazione di sistemi mobile 2 Cos è Il Google Cloud Messaging o GCM è un servizio di Google che permette di inviare
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
Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006
Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Si noti che le soluzioni ai quesiti saranno considerate
Client e Server comunicano tramite il protocollo SOAP.
In questo tutorial implementeremo un semplice SOAP web service in PHP che un client Java richiamerà. In questo modo mostreremo l'interoperabilità fra linguaggi diversi che SOAP permette di avere. La struttura
Realizzazione di una classe con un associazione
Realizzazione di una classe con un associazione Nel realizzare una classe che è coinvolta in un associazione, ci dobbiamo chiedere se la classe ha responsabilità sull associazione. Diciamo che una classe
Programmare con le Socket TCP in java. 2: Application Layer 1
Programmare con le Socket TCP in java 2: Application Layer 1 Il Client contatta il server Il Server: Il processo server è sempre attivo in attesa di connessioni (demone) Crea una socket per accettare la
Programmazione a oggetti e JAVA. Prof. B.Buttarazzi A.A. 2011/2012
Programmazione a oggetti e JAVA Prof. B.Buttarazzi A.A. 2011/2012 Sommario Variabili statiche Ereditarietà multipla Le interfacce Binding Esercizi Esercizio ContoCorrente Creare una classe ContoCorrente
Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione
Gli EJB offrono vari vantaggi allo sviluppatore di una applicazione Un ambiente di esecuzione che gestisce o naming di oggetti, sicurezza, concorrenza, transazioni, persistenza, distribuzione oggetti (location
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
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa E08 Soluzione Esercizi F. Gasparetti, C. Limongelli Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf1/ Soluzione Esercizi
Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011
Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.
Un esercizio d esame. Flavio De Paoli
Un esercizio d esame e note sulla gestione dei dati Flavio De Paoli Il testo (Appello 22 ottobre 2001) Una stazione di servizio dispone di n distributori di benzina. I clienti si presentano a uno dei distributori
Programmazione ad Oggetti Modulo A (Esame del 11/9/2015)
Programmazione ad Oggetti Modulo A (Esame del 11/9/2015) Esercizio 1 Considerate la seguente gerarchia di classi: class A { public void print(string s) { System.out.println(s); public void m1() { print("a.m1");
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)
