Programmazione ad Oggetti

Размер: px
Начинать показ со страницы:

Download "Programmazione ad Oggetti"

Транскрипт

1 Programmazione ad Oggetti Java - IO Corso di Programmazione ad Oggetti Seconda Università di Napoli Ing. Antonio Coronato ICAR - CNR Agenda Operazioni di IO da tastiera Oggetti System per le operazioni di output Oggetti per le operazioni di input da console Corso di Programmazione ad Oggetti Seconda Università di Napoli Ing. Antonio Coronato ICAR - CNR 1

2 Un esempio Programma per il calcolo dell indice BMI (rapporto peso-altezza) BMI = Peso [Kg]/(Altezza [m] * Altezza [m]) Corso di Programmazione ad Oggetti Seconda Università di Napoli Ing. Antonio Coronato ICAR - CNR Strumenti di stampa a video The Il punto period indicat che es tsi hat intende we want selezionare t o select an un singolo individual membro class member della classe of Syst System Il punto The period indica indicat che si es intende t hat we want t o selezionare select an individual un singolo class membro member di of out out System. out. print ( "string" ) Il Member membro out out of della Syst em classe is an System out put è un st ream oggetto object flusso aut omat di output ically Lit Stringa eral charact di caratteri st ring letterali t hat is automaticamente associat ed wit h t he associato console con window la che t contiene paramet er il parametro t o print (). finestra running della console t he applicat sulla ion quale si per print() Class La classe Syst System is defined esegue l applicazione è definita t he st andard nella Met Membro hod member metodo of di out out.. The L esecuzione execut of del member membro print () package distribuzione java.lang print() causes fa it s sì paramet che il suo er tparametro o be displayed venga t o t he visualizzato out put st ream nel standard di flusso di output java.lang 2

3 Sequenze di escape Java fornisce sequenze di escape per la stanza di caratteri speciali \b backspace \n newline (nuova riga) \t tab (tabulazione) \r carriage return (ritorno carrello) \\ backslash \" double quote (virgoletta doppia) \' single quote (virgoletta singola) Sequenze di escape Che cosa producono in output queste istruzioni? System.out.println("Person\tHeight\tShoe size"); System.out.println("========================="); System.out.println("Hannah\t5 1\"\t7"); System.out.println("Jenna\t5'10\"\t9"); System.out.println("JJ\t6'1\"\t14"); Output Person Height Shoe size ========================= Hannah 5'1" 7 Jenna 5'10" 9 JJ 6'1" 14 3

4 Struttura del programma per BMI.java // Scopo: calcolare BMI per peso e altezza dati public class BMI // main(): punto di ingresso per l'applicazione public static void main(string[] args) // definisce le variabili/costanti // imposta le caratteristiche della persona // esegue il calcolo del BMI // visualizza il risultato Soluzione con parametri di ingresso costanti public static void main(string[] args) { // imposta le caratteristiche della persona double weight = 75.5; // peso della persona double height = 1.8; // altezza della persona // esegue il calcolo del BMI double bmi = weight / (height * height); // visualizza il risultato System.out.println("A person with"); System.out.println(" weight " + weight + " Kg"); System.out.println(" height " + height + " metri"); System.out.println("has a BMI of " + bmi); 4

5 Programmi interattivi Programmi che interagiscono con i loro utenti attraverso istruzioni che eseguono input e output BMI.java Non interattivo: peso e altezza sono fissi Supporto per programmi console interattivi Variabile System.in Associata al flusso di input standard: la tastiera Classe BufferedReader Supporta l'estrazione di una riga di input come stringa di caratteri BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in)); La variabile stdin dà accesso a un flusso di input di tipo BufferedReader. L'attributo di origine dell'input per questo oggetto BufferedReader è la tastiera. I comportamenti di un oggetto BufferedReader offrono una vista di inserimento di testo di alto livello. 5

6 Accesso al flusso di input standard Impostazione BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in)); new BufferedReader(new InputStreamReader(System.in)) A new operation constructs a new object. The value of the operation is a reference to the new object. This new operation constructs a costruisce un oggetto BufferedReader da un oggetto new BufferedReader object out of a new InputStreamReader object that was built using the object representing the standard input stream Le operazioni new costruiscono nuovi oggetti. Il valore dell'operazione è un riferimento a un nuovo oggetto. Questa particolare operazione new InputStreamReader, che è stato realizzato utilizzando l'oggetto che rappresenta il flusso di input standard. Programma interattivo per BMI Struttura del programma // Scopo: calcolare BMI per peso e altezza // specificati dall'utente import java.io.*; public class BMICalculator // main(): punto di ingresso per l'applicazione public static void main(string[] args) throws IOException // definisce le costanti // imposta il flusso di input // ottiene le caratteristiche della persona // esegue il calcolo del BMI // visualizza il risultato 6

7 public static void main(string[] args) throws IOException final double KILOGRAMS_PER_POUND = 0.454; final double METERS_PER_FOOT = ; System.out.println("BMI Calculator\n"); BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in)); System.out.print("Enter weight (lbs): "); double weight = Double.parseDouble(stdin.readLine()); System.out.print("Enter height (feet): "); double height = Double.parseDouble(stdin.readLine()); double metricweight = weight * KILOGRAMS_PER_POUND; double metricheight = height * METERS_PER_FOOT; double bmi = metricweight / (metricheight * metricheight); System.out.println("A person with"); System.out.println(" weight " + weight + " (lbs)"); System.out.println(" height " + height + " (feet)"); System.out.println("has a BMI of " + bmi); Accesso al flusso di input standard Estrazione System.out.print("Enter weight (lbs): "); double weight = Double.parseDouble(stdin.readLine()); System.out.print("Enter height (feet): "); double height = Double.parseDouble(stdin.readLine()); 7

8 Altri strumenti di accesso al flusso di input standard Estrazione int weight = Integer.parseInt(stdin.readLine()); float height = Float.parseFloat(stdin.readLine()); In generale i metodi parse ricevono un oggetto di tipo String 8

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

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

Подробнее

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.

Подробнее

Le basi del linguaggio Java

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

Подробнее

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

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

Подробнее

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)

Подробнее

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList 1 ArrayList Gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito al momento della creazione e rimane immutato.

Подробнее

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni

Подробнее

/** * 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

Подробнее

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

Подробнее

Programmazione Orientata agli Oggetti in Linguaggio Java

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

Подробнее

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

Подробнее

TIPI PRIMITIVI E CLASSI WRAPPER

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

Подробнее

Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM

Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM ERRATA CORRIGE dei programmi della prima stampa (Aprile 2004) aggiornato al 20/05/2017 Nota: il codice corretto è ottenibile da quella errato

Подробнее

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale

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

Подробнее

Laboratorio di Programmazione 1 [Java]

Laboratorio di Programmazione 1 [Java] Laboratorio di Programmazione 1 [Java] Prova di esame - 7 Settembre 2010 Tempo massimo: 50 minuti Si implementino in Java le classi Tavolo e Ristorante. La classe Tavolo ha i seguenti attributi: numero

Подробнее

ESERCIZIO 1 (FILE DI TESTO)

ESERCIZIO 1 (FILE DI TESTO) ESERCIZIO 1 (FILE DI TESTO) Scrivere su un file di testo righe inserite da console, fino a quando non viene inserita la linea vuota. Passare il nome del file come parametro al programma. Bisogna incapsulare

Подробнее

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica informatica Java basi del linguaggio Alberto Ferrari Informatica struttura di un programma Java /** * Classe EsempioProgramma * Un esempio di programmazione in Java * @author 4A Informatica */ public class

Подробнее

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

Подробнее

(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

Подробнее

Laboratorio di Programmazione 1 [Java]

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

Подробнее

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

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

Подробнее

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

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

Подробнее

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

Подробнее

Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java

Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa [email protected] 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e

Подробнее

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

Подробнее

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni

FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Università degli Studi di Modena e Reggio Emilia Facoltà di Ingegneria CORSO DI FONDAMENTI DI INFORMATICA C Linguaggio Java: Eccezioni Prof. Zambonelli, Ing. Cabri, Ing. Denti, Ing. Andrea Aime Zambonelli,

Подробнее