Anteprima
Vedrai una selezione di 1 pagina su 5
Appunti di Fondamenti di informatica su classi e oggetti in java Pag. 1
1 su 5
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Copiare variabili importarla nel programma, usando l’enunciato

Le variabili di tipi numerici fondamentali ¨ import nomePacchetto.NomeClasse;

indirizzano una posizione in memoria che ¨ Le classi System e String appartengono al

valore

contiene un , che viene copiato con pacchetto java.lang

l’assegnazione ¨ il pacchetto java.lang viene importato

¤ cambiando il valore di una variabile, non automaticamente

viene cambiato il valore dell’altra

¨ Le variabili oggetto indirizzano una

posizione in memoria che, invece, contiene un Scopo: importare una classe da un pacchetto,

riferimento ad un oggetto , e solo tale per poterla utilizzare in un programma

riferimento viene copiato con l’assegnazione

¤ modificando lo stato dell’oggetto, tale

modifica è visibile da entrambi i riferimenti Scopo: importare tutte le classi di un

non viene creata una copia

¤ pacchetto, per poterle utilizzare in un

dell’oggetto! programma

Collaudo di una classe Usare una classe BankAccount

¨ Passi per costruire un programma di ¨ BankAccount()

collaudo ¤ crea un conto bancario inizialmente vuoto

¤ Definire una nuova classe

¨ double getBalance()

¤ Restituisce il valore del saldo Differenza tra metodi statici e non statici

¨ void withdraw(double amount) 1 println agisce su un oggetto (ad esempio,

System.out)

¤ Preleva l’ammontare indicato come

parametro esplicito 1 println è un metodo non statico

¨ void deposit(double amount) 1 Invoco il metodo con

nomeOggetto.nomeMetodo(…);

¤ Deposita l’ammontare indicato come

parametro esplicito 2 pow non agisce su un oggetto (Math è una

classe) metodo statico

2 Il metodo Math.pow è un

Le classi come contenitori di metodi 2 Invoco il metodo con

¨ Le classi possono essere utilizzate anche nomeClasse.nomeMetodo(…);

come semplici contenitori metodi

¤ Questi metodi non agiscono su oggetti ma

solo su eventuali parametri espliciti i nomi delle classi (es. Math) iniziano con una

maiuscola

n Non hanno un parametro implicito lettera

n Si dicono metodi statici (quelli con ¨ i nomi di oggetti (out) e metodi (println,

parametro implicito si chiamano “non statici”) pow) minuscola

iniziano con una lettera solo

Per invocare un metodo statico che si trova in § oggetti e metodi si distinguono perché

i

una classe devo utilizzare la seguente

sintassi: metodi sono sempre seguiti dalle

parentesi tonde

¨ NomeClasse.nomeMetodo(parametri); Esempio di firma di un metodo statico

La classe Math della libreria standard mette

a public : il metodo può essere invocato in

disposizione metodi statici per il calcolo di qualsiasi classe

tutte le static

¤ : il metodo è statico (non agisce su un

funzioni algebriche e trigonometriche oggetto)

double

y

¤ Math.pow(x, y) restituisce x ¤ : tipo di dato restituito

n (il nome pow deriva da power, potenza) n In generale è possibile che un metodo non

restituisca dati, in questo caso il tipo del dato

¤ Math.sqrt(x) restituisce la radice quadrata restituito è void

di x pow

¤ : nome o identificatore del metodo

n (il nome sqrt deriva da square root, radice double a, double b:

quadrata) ¤ parametri espliciti del

metodo

¤ Math.log(x) restituisce il logaritmo

naturale di x

¤ Math.sin(x) restituisce il seno di x espresso Nella classe Math sono definite alcune

in radianti costanti

n Non ha un equivalente di println della classe

PrintStream

La classe scanner

¨ La classe Scanner appartiene al pacchetto

java.util della libreria standard e lo scopo della

classe Scanner è quello di fornire una

costanti

¨ Sono statiche, ovvero comoda interfaccia all’oggetto System.in

appartengono alla classe oggetto

Prima di tutto bisogna creare un

¨ Tali costanti sono di norma public e per della classe Scanner usando l’istruzione

ottenere il loro ¨ E’ possibile creare un oggetto di questo tipo

valore si usa il nome della classe seguito dal a partire da un qualsiasi flusso di input

punto e dal ¨ Dopo aver creato uno scanner è possibile

nome della costante, Math.E, oppure usarne i metodi di lettura

Math.PI ¨ Durante ogni esecuzione dei metodi di

il programma si ferma

lettura di Scanner,

ed attende l’introduzione dell’input da

Assegnazioni e operatori matematici tastiera, che viene considerata conclusa

quando l’utente batte il tasto Invio

Questa operazione è talmente comune nella Il metodo nextInt restituisce un valore

programmazione, che il linguaggio Java numerico di tipo int

fornisce una scorciatoia ¨ Il metodo nextDouble restituisce un valore

numerico in virgola mobile

I progettisti della classe Scanner hanno usato

Esiste per tutti gli operatori aritmetici Localizzazione

la (il comportamento del

programma è legato alla configurazione del

sistema su cui viene fatto eseguire) quindi a

seconda della configurazione (anglosassone

italiana

o ) un valore di tipo double dovrà

essere inserito nella forma

Questa operazione è talmente comune nella

programmazione, che il linguaggio Java ¨ parteIntera.parteDecimale ad esempio

operatore apposito per:

fornisce un 4.35

l’incremento

¤ ¨ parteIntera,parteDecimale ad esempio

4,35

il decremento

¤

L’input standard dei programmi

L’interprete Java mette a disposizione dei

programmi in esecuzione il proprio input

standard (flusso di input), tramite

¤ System.in di tipo InputStream definito

nella classe System

¤ Sfortunatamente, la classe InputStream

non possiede metodi comodi per la ricezione

di dati numerici e stringhe

Dettagli
Publisher
A.A. 2020-2021
5 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher togna52 di informazioni apprese con la frequenza delle lezioni di Fondamenti di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Padova o del prof Pizzi Cinzia.