Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Utilizzo di oggetti in Java: Concetti di classe, variabili e metodi, Schemi e mappe concettuali di Programmazione Java

Le note di una lezione universitaria tenuta dal prof. Luca Mainetti sull'utilizzo di oggetti in Java. Il documento copre obiettivi come l'utilizzo di variabili, comprendere i concetti di classe e oggetto, invocare metodi, utilizzare parametri e valori restituiti, consultare la documentazione API di Java e realizzare programmi di collaudo. Inoltre, vengono spiegati i concetti di classe, oggetti, variabili e dichiarazioni, tipi, nomi e convenzioni, assegnamenti, invocazione di metodi, parametri e valori restituiti, dichiarazione di metodi e costruzione di oggetti.

Tipologia: Schemi e mappe concettuali

2021/2022

Caricato il 13/03/2022

wedewdcc
wedewdcc 🇮🇹

2 documenti

1 / 26

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Programmazione Orientata agli Oggetti
a.a. 2021-2022
Utilizzare oggetti
Prof. Luca Mainetti
Università del Salento
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Anteprima parziale del testo

Scarica Utilizzo di oggetti in Java: Concetti di classe, variabili e metodi e più Schemi e mappe concettuali in PDF di Programmazione Java solo su Docsity!

Programmazione Orientata agli Oggetti

a.a. 2021- 2022

Utilizzare oggetti Prof. Luca Mainetti Università del Salento

Obiettivi della lezione

! Imparare a utilizzare variabili ! Comprendere i concetti di classe e oggetto ! Imparare a invocare i metodi ! Usare parametri e valori restituiti dai metodi ! Consultare la documentazione dell’API di Java ! Realizzare programmi di collaudo ! Comprendere la differenza tra oggetti e riferimenti a oggetti ! Scrivere programmi con semplici interfacce grafiche

Utilizzare oggetti

! Un oggetto è un’entità (per ora pensiamolo come un «contenitore di dati») che può essere manipolata (i suoi dati possono essere modificati) mediante l’invocazione di metodi ! Un metodo (simile a una funzione C) è costituito da una sequenza di comandi ! Un metodo può essere invocato (chiamato) ! All’atto della chiamata, si conosce il comportamento del metodo ma non l’insieme dei suoi comandi (incapsulamento) ! Il metodo println modifica i dati dell’oggetto System.out

Utilizzare oggetti (cont.)

! In sintesi, la

struttura è

rappresentata in

figura

! Non sappiamo

come println e

print siano

implementati ma

ne conosciamo il

comportamento

Classi (cont.)

! Gli oggetti della classe PrintStream hanno un comportamento differente dagli oggetti della classe String ! Questo perché classi diverse hanno responsabilità differenti in un sistema ! Quindi classi diverse hanno comportamenti differenti ! Non è possibile invocare i metodi println e print su oggetti della classe String

Variabili e dichiarazioni di variabili

! Quando manipoliamo oggetti abbiamo spesso la necessità di memorizzare gli oggetti stessi nei loro vari stati e i valori restituiti dai loro metodi in modo da usarli in seguito ! Per memorizzare valori in Java si utilizzano le variabili ! Come in C, le variabili devono essere dichiarate prima di poter essere utilizzate ! Ogni variabile ha un nome e contiene un valore ! Questo valore appartiene a uno specifico dominio che è determinato da un tipo ! Spesso quando dichiariamo una variabile specifichiamo anche il suo valore iniziale

Esempi di dichiarazione di variabile

Tipi

! In Java esiste un insieme di tipi (https://www.w3schools.com/java/java_data_types.asp) ! Si distingue tra tipi primitivi e tipi non-primitivi ! I tipi primitivi specificano la dimensione del dominio dei valori e non espongono metodi ! I tipi non-primitivi sono costruiti dai programmatori e sono riferimenti a oggetti ! I tipi non-primitivi possono essere usati per invocare metodi ! I tipi primitivi iniziano con lettera minuscola mentre quelli non-primitivi con lettera maiuscola ! I tipi non-primitivi non sono predefiniti in Java ad esclusione del tipo String

Commenti

! Per i commenti al codice si utilizza la stessa sintassi del C ! «//» per commenti brevi e blocchi «/* */» per commenti lunghi cioè su più linee ! E’ bene che ogni classe e ogni metodo siano commentati ! I commenti devono (dovrebbero) chiarire il comportamenti di una classe o di un metodo ed esplicitarne il «contratto» di utilizzo ! Codice non commentato non è evolvibile ! Per essere rapidi nei nostri esempi ci permettiamo di non commentare il codice

Assegnamenti

! Modificare il valore di variabili ! LHS = RHS ! LHS = variabile ! RHS = espressione ! Le variabili devono essere dichiarate prima di poter essere utilizzate sia nel LHS sia nel RHS ! Le variabili devono essere inizializzate prima di essere utilizzate nel RHS

Parametri dei metodi

! La maggior parte dei metodi necessità di valori in input che i metodi elaborano ! Tali valori sono denominati parametri o argomenti ! Alcuni metodi standard degli oggetti creati dagli utenti sono set(value) e get() System.out.println(greeting);

Valori restituiti dai metodi

int numberOfCharacters = greeting.length() System.out.println(greeting.length()); river = river.replace("issipp", "our");

Costruire oggetti

! Gli oggetti definiti dal program- matore devono essere costruiti prima di essere utilizzati ! Ad esempio, pensiamo a un oggetto che rappresenta un rettangolo, caratterizzato dalle coordinate x,y del vertice superiore sinistro e da una width e height ! Nella figura vi sono tre diverse istanze di rettangolo rappresentate con i retativi dati ! La macchina virtuale Java riserva una zona di memoria per contenere quadruple di dati per ogni nuovo oggetto rettangolo new Rectangle(5, 10, 20, 30) new Rectangle(35, 30, 20, 20) new Rectangle(45, 0, 30, 20)

La sintassi per costruire oggetti

! L’operatore new

  • Costruisce un oggetto di tipo Rectangle
  • Usa i parametri ricevuti per inizializzare i dati dell’oggetto
  • Restituisce l’oggetto ! I costruttori non sono metodi, possono essere utilizzati sono tramite new Rectangle box = new Rectangle(5, 10, 20, 30); box.Rectangle( 20 , 35 , 20, 30); box = new Rectangle( 20 , 35 , 20, 30); box = new Rectangle();