Programmazione a oggetti e JAVA. Prof. B.Buttarazzi A.A. 2011/2012



Documenti analoghi
Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

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

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

Introduzione a Classi e Oggetti

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a luglio 2013

Esempio: il conto bancario

UML. Unified Modeling Language (linguaggio di modellazione unificato) prof. Antonio Gervasi IIS «A.Meucci» Casarano

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a giugno 2013

UML Diagrammi delle classi. UML Diagramma classi 1

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo.

Esercizi della lezione 5 di Java

Test di unità con JUnit4

Programmazione a Oggetti Lezione 10. Ereditarieta

Il conto corrente: uso

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 21 Dicembre 2006

Fondamenti di Informatica C Esercitazioni di Laboratorio / 3 Outline

Inizializzazione, Assegnamento e Distruzione di Classi

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

Telematica II 17. Esercitazione/Laboratorio 6

Livelli di astrazione

Programmazione CORBA in Java

Parola chiave extends

sayhello public private protected return public class Greeter { public String sayhello() { String message = Hello, World! ; return message; } }

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a prof.

esercizi Esercizi / problemi

Ingegneria del Software

Grafico della parabola

Algoritmi di Ricerca. Esempi di programmi Java

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

Definizione di classi con array di oggetti

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2011

Modulo 4: Ereditarietà, interfacce e clonazione

15 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Ottava Esercitazione. introduzione ai thread java mutua esclusione

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 17 Dicembre 2005

Prossime lezioni. Dai TDA agli oggetti. Riassunto. Riassunto TDA. Oggi. Stefano Mizzaro 1

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

Politecnico di Milano. Ingegneria del Software a.a. 2006/07. Appello del 14 settembre 2007 Cognome Nome Matricola

Realizzazione di una classe con un associazione

14 - Packages. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

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:

GESTIONE DEI PROCESSI

costruttori e distruttori

Visibilità dei Membri di una Classe

Esercizio: gestione di un conto corrente

Java: Compilatore e Interprete

Fondamenti di Informatica 2

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Primo scritto 11 Gennaio 2008

Esercitazione n 4. Obiettivi

COMPITO DI LABORATORIO DI PROGRAMMAZIONE Luglio Soluzione degli Esercizi

Gruppi di Thread. Java threads (3) Gruppi di thread e Timer. Operating Systems. Operating Systems. Java threads 3. Java threads 3

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce

Classi ed Oggetti in JAVA

Programmazione orientata agli oggetti Classi astratte e interfacce

Oggetti Lezione 3. aspetti generali e definizione di classi I

Programmazione orientata agli oggetti Classi astratte e interfacce. Classi astratte - Interfacce

Introduzione all' OO in Python

Programmazione. Cognome... Nome... Matricola... Prova scritta del 20 febbraio 2012

Relazioni tra oggetti e classi : Composizione. Relazioni tra oggetti e classi : esempio di Aggregazione. classe contenitore

Esempi di esercizi d esame

Le variabili. Olga Scotti

Main System Monitor Keyboard

3. La sintassi di Java

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

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

LAVORI ESTIVI DI INFORMATICA PER LA CLASSE IV Sez. Ainf (Prof. Tessore Luca)

Compute engine generici in RMI

Programmazione Java: Variabili membro, Metodi La parola chiave final

Concetto di Funzione e Procedura METODI in Java

Metodologie di progetto Estensione di classi Implementazione di interfacce Composizione

Struttura di un programma Java

Corso sul linguaggio Java

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

Programmazione. Cognome... Nome... Matricola... Compitino del 26 gennaio 2009

Soluzioni degli esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

Esercizio: la classe CashRegister

!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9

Java Virtual Machine

Prof. Pagani Corrado ESERCITAZIONI DIAGRAMMI DELLE CLASSI UML E JAVA

Architettura MVC-2: i JavaBeans

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

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

Un esercizio d esame. Flavio De Paoli

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

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

appunti delle lezioni Architetture client/server: applicazioni server

Prova d Esame Compito B

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

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Progettazione : Design Pattern Creazionali

Esempio: Interfacce. Gioco Interfacce

Un modello è ragionevole quando contiene queste tre caratteristiche.

Transcript:

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 che permetta di gestire un conto corrente bancario caratterizzato dai seguenti attributi: nome dell intestatario (String); cognome dell intestatario (String); numero di conto corrente (long); saldo residuo (double). Il costruttore deve avere come parametri il nome, il cognome ed il saldo iniziale. Il numero di conto corrente deve essere calcolato automaticamente in maniera incrementale (si può realizzare usando una variabile statica). Realizzare i metodi: deposita, che permette di depositare denaro sul conto corrente; preleva, che permette di prelevare denaro dal conto corrente; print, che stampa a video le informazioni sul conto corrente (numero, intestatario, saldo residuo)

Esercizio ContoCorrente Per testare il corretto funzionamento della classe ContoCorrente, realizzare la classe TestConto ed il relativo metodo main che esegue le seguenti operazioni: Crea due conti correnti intestati a due persone diverse. Effettua un operazione di bonifico dal primo al secondo conto (utilizzano i metodi preleva e deposita). Stampa a video le informazioni dei conti prima e dopo il bonifico.

Esempio di uso di interfaccia class Rectangle extends RadiceFigure implements Figure{ Rectangle(double a, double b) { super(a, b); } protected double dim1 RadiceFigure Figure // definisce area() di Figure public double area() { return dim1 * dim2; } protected double dim2 + RadiceFigurae(double b, double h) + String tipo() + double area () } // definisce tipo() di Figure public String tipo() { } return "Rectangle "; Rettangolo + Rettangolo(double b, double h) + String tipo + double area (double a, double h)

Esempio di uso di più interfacce class Rectangle extends RadiceFigure implements A,B,C{ Rectangle(double a, double b) { super(a, b); } // definisce area() di Figure public double area() { return dim1 * dim2; } } // definisce tipo() di Figure public String tipo() { return "Rectangle "; }

Esercizio

Esercizio

//facciamo finta di aver definito le classi B,C,D... public class A { private B oggettob; private C oggettoc; private D oggettod; public void setb(b ob); public void setc(c oc); public void setd(d od); public static void main(string[] args) { B b = new B(); C c = new C(); D d = new D(); A a = new A(); a.setb(b); a.setc(c); a.setd(d); } }

//facciamo finta di aver definito le classi B,C,D... public class A { public void usob() { B b = new B(); b.metododib(); } public void usoc() { C c = new C(); c.metododic(); } public void usod() { D d = new D(); d.metododid(); } public static void main(string[] args) { A a = new A(); a.usob(); a.usoc(); a.usod(); } }

Esercizio ContoCorrente Creare una classe ContoCorrente che permetta di gestire un conto corrente bancario caratterizzato dai seguenti attributi: nome dell intestatario (String); cognome dell intestatario (String); numero di conto corrente (long); saldo residuo (double). Il costruttore deve avere come parametri il nome, il cognome ed il saldo iniziale. Il numero di conto corrente deve essere calcolato automaticamente in maniera incrementale (si può realizzare usando una variabile statica). Realizzare i metodi: deposita, che permette di depositare denaro sul conto corrente; preleva, che permette di prelevare denaro dal conto corrente; print, che stampa a video le informazioni sul conto corrente (numero, intestatario, saldo residuo)

Esercizio ContoCorrente Per testare il corretto funzionamento della classe ContoCorrente, realizzare la classe TestConto ed il relativo metodo main che esegue le seguenti operazioni: Crea due conti correnti intestati a due persone diverse. Effettua un operazione di bonifico dal primo al secondo conto (utilizzano i metodi preleva e deposita). Stampa a video le informazioni dei conti prima e dopo il bonifico.

Esercizio Un Condominio è un insieme (aggregazione) di oggetti di tipo Appartamento. Un Appartamento è caratterizzato da un interno, un Proprietario ed un numero di millesimi (in relazione alla grandezza). Un Proprietario è caratterizzato da un nome Metodi e attributi principali della classe Condominio: Attributi: appartamenti: E una array contenente le coppie (interno, appartamento) costoamillesimo: E il costo a millesimo per il condominio Metodi: putappartamento( interno: int, a: Appartamento ) inserisce un nuovo appartamento identificato da un interno. calcolacanonecondominiale(interno: int) stampa il conto del canone condominiale relativo all appartamento passato come parametro. Il conto è calcolato con la seguente espressione: millesimi X costoamillesimo

Esercizio Automobile Creare una classe Automobile secondo lo schema UML riportato

Esercizio Automobile Per testare il corretto funzionamento della classe Automobile, realizzare la classe TestAutomobile ed il relativo metodo main che esegue le seguenti operazioni: Crea due automobili. Effettua alcune operazioni di impostazione della pressione delle gomme. Stampa a video le informazioni delle automobili prima e dopo le variazioni.

Esercizio Un Albergo è un insieme (aggregazione) di oggetti di tipo Camera Metodi: putcamera( numerocamera: int, c: Camera ) inserisce una nuova camera identificata da numerocamera nell albergo. putcliente(c: Cliente, numerocamera: int) associa alla camera identificata da numerocamera un Cliente passato come parametro. calcolacontocamera(numerocamera: int) stampa il conto della camera con il n umero passato come parametro. Il conto è calcolato con la seguente espressione: giornidipermanenza X prezzogiornalierocamera Una Camera è caratterizzata da un numero camera, un Cliente ed un prezzo giornaliero Un Cliente è caratterizzato da un nome, un periodo di permanenza

Dati i seguenti class diagram realizzare un programma Java che li implementa.