Variabili Java

67 %
33 %
Information about Variabili Java
Education

Published on November 16, 2008

Author: silvanonatalizi

Source: slideshare.net

Description

differenza tra le variabili primitive e quelle di riferimento in java

Le Variabili in Java 5° parte del modulo Programmazione ad Oggetti Lezione sulle variabili del 17 novembre 2008 Per la classe IVA liceo tecnico – Prof. Silvano Natalizi

La terminologia delle variabili in Java In relazione al loro contenuto Primitive di Riferimento (reference) In relazione a dove le dichiariamo di istanza (la memoria dello stato dell’oggetto) locali (dichiarate dentro un metodo) In relazione al loro essere di input o di output argomenti (input) valori restituiti (return types) (output) In relazione alla loro complessità variabili semplici strutture dati (array…)

In relazione al loro contenuto

Primitive

di Riferimento (reference)

In relazione a dove le dichiariamo

di istanza (la memoria dello stato dell’oggetto)

locali (dichiarate dentro un metodo)

In relazione al loro essere di input o di output

argomenti (input)

valori restituiti (return types) (output)

In relazione alla loro complessità

variabili semplici

strutture dati (array…)

Ogni variabile è di un tipo Ogni dato è di un preciso tipo Ad esempio: Un numero intero è di tipo int Un numero reale è di tipo double Un cane pastore è un cane Ogni variabile appartiene ad un tipo preciso di dato Non si può memorizzare un dato in una variabile che non è del suo tipo

Ogni dato è di un preciso tipo

Ad esempio:

Un numero intero è di tipo int

Un numero reale è di tipo double

Un cane pastore è un cane

Ogni variabile appartiene ad un tipo preciso di dato

Non si può memorizzare un dato in una variabile che non è del suo tipo

Java si preoccupa del tipo della variabile Java fa tutto un lavoro per la nostra sicurezza Non permette che si facciano cose bizzarre o pericolose come quella di inserire un dato di un tipo in una variabile di un altro tipo ad esempio un numero decimale in una variabile di tipo intero, a meno che concordiate con il compilatore di accettare la perdita di precisione insita in quella assegnazione di valore ( si perde la parte decimale del numero) Inoltre il compilatore non permette altre cose del tipo Coniglio coniglio = new Giraffa() Come potrei creare un coniglio con il metodo costruttore di una Giraffa ?

Java fa tutto un lavoro per la nostra sicurezza

Non permette che si facciano cose bizzarre o pericolose come quella di inserire un dato di un tipo in una variabile di un altro tipo

ad esempio un numero decimale in una variabile di tipo intero, a meno che concordiate con il compilatore di accettare la perdita di precisione insita in quella assegnazione di valore ( si perde la parte decimale del numero)

Inoltre il compilatore non permette altre cose del tipo

Coniglio coniglio = new Giraffa()

Come potrei creare un coniglio con il metodo costruttore di una Giraffa ?

Dichiarazione di una variabile Per permettere a Java di fare tutto il lavoro di controllo sulle variabili, dobbiamo dichiarare il tipo di variabile E’ un intero? E’ un singolo carattere? E’ una Giraffa? Le variabili devono avere un nome Le variabili devono avere un tipo La variabili possono essere degli oggetti Quando si dice un oggetto di tipo X, il Tipo dell’oggetto e la Classe dell’oggetto sono esattamente la medesima cosa Tipo dell’oggetto e Classe sono termini sinonimi

Per permettere a Java di fare tutto il lavoro di controllo sulle variabili, dobbiamo dichiarare il tipo di variabile

E’ un intero? E’ un singolo carattere? E’ una Giraffa?

Le variabili devono avere un nome

Le variabili devono avere un tipo

La variabili possono essere degli oggetti

Quando si dice un oggetto di tipo X,

il Tipo dell’oggetto e la Classe dell’oggetto sono esattamente la medesima cosa

Tipo dell’oggetto e Classe sono termini sinonimi

Variabili come contenitori Quando pensate alle variabili concretizzatele quelle piccole con delle tazze (per il caffè, il latte, il tè…), quelle grandi con dei bicchieri di birra giganti o con i contenitori di popcorn che i ruminanti si portano dietro nelle sale dei cinema Una variabile è come una tazza, è come un contenitore, contiene qualcosa Una variabile ha una dimensione ed un tipo Una variabile può contenere valori “primitivi” oppure riferimenti agli oggetti

Quando pensate alle variabili concretizzatele

quelle piccole con delle tazze (per il caffè, il latte, il tè…),

quelle grandi con dei bicchieri di birra giganti o con i contenitori di popcorn che i ruminanti si portano dietro nelle sale dei cinema

Una variabile è come una tazza, è come un contenitore, contiene qualcosa

Una variabile ha una dimensione ed un tipo

Una variabile può contenere valori “primitivi” oppure riferimenti agli oggetti

La grandezza di una variabile Se facciamo l’analogia tra la grandezza di una variabile con quella dei coni di un gelato Abbiamo coni piccoli, mediani, grandi… Lo stesso vale per le variabili

Se facciamo l’analogia tra la grandezza di una variabile con quella dei coni di un gelato

Abbiamo coni piccoli, mediani, grandi…

Lo stesso vale per le variabili

La grandezza delle variabili primitive Le variabili primitive sono quelle che contengono il valore della variabile (numeri, caratteri, vero/falso) Le variabili primitive hanno diverse dimensioni I quattro contenitori mostrati sono per i numeri interi, aventi diverse grandezza Ogni contenitore ha un numero fisso di bit

Le variabili primitive sono quelle che contengono il valore della variabile (numeri, caratteri, vero/falso)

Le variabili primitive hanno diverse dimensioni

I quattro contenitori mostrati sono per i numeri interi, aventi diverse grandezza

Ogni contenitore ha un numero fisso di bit

I diversi tipi di variabili primitive Tipo Bit Intervallo di valori boolean … true/false char 16 (0, 65536) caratteri alfanumerici byte 8 (-128 , 127) short 16 (-32768 ,32767) Int 32 (-2147483648, 2147483647) long 64 (-molto grande, + molto grande) float 32 Numeri decimali double 64 Numeri decimali più grandi

Dichiarazione ed assegnazione di valori alle variabili primitive Si può assegnare il valore ad una variabile in più modi. Scrivendo un valore dopo il segno dell’uguale Assegnare il valore di una variabile ad un’altra Utilizzare un’espressione algebrica dopo l’uguale x=y+56 Dichiarazione Assegnazione int x; x=560; byte b; b=89; boolean isFun; isFun=true; double d; d=4567.89; char c; c=‘d’; boolean powerOn; powerOn=isFun; int y; y=300; int z; z=y;

Si può assegnare il valore ad una variabile in più modi.

Scrivendo un valore dopo il segno dell’uguale

Assegnare il valore di una variabile ad un’altra

Utilizzare un’espressione algebrica dopo l’uguale x=y+56

Il valore deve entrare nella variabile Non si può mettere un valore grande in una tazza piccola Si può anche, ma a costo di versare la parte che non c’entra Il compilatore cerca di evitare questo se riesca a comprendere dal codice che qualcosa non può essere contenuto nella variabile Ad esempio non si può mettere un valore di tipo int in una variabile di tipo byte: int x=24; byte b=x; non è accettato dal compilatore ! Ma come ? Noi sappiamo che 24 entra in una tazza di tipo byte! Il fatto è che il compilatore si preoccupa se noi cerchiamo di mettere una grande cosa dentro una piccola, e c’è la possibilità di un traboccamento! Non aspettiamoci che il compilatore sappia quale è il valore di x, anche se è scritto letteralmente nel codice!

Non si può mettere un valore grande in una tazza piccola

Si può anche, ma a costo di versare la parte che non c’entra

Il compilatore cerca di evitare questo se riesca a comprendere dal codice che qualcosa non può essere contenuto nella variabile

Ad esempio non si può mettere un valore di tipo int in una variabile di tipo byte: int x=24; byte b=x; non è accettato dal compilatore ! Ma come ? Noi sappiamo che 24 entra in una tazza di tipo byte! Il fatto è che

il compilatore si preoccupa se noi cerchiamo di mettere una grande cosa dentro una piccola, e c’è la possibilità di un traboccamento! Non aspettiamoci che il compilatore sappia quale è il valore di x, anche se è scritto letteralmente nel codice!

Il nome delle variabili Quali nomi possiamo usare per chiamare le variabili? Il nome deve iniziare con una lettera, un segno underscore _, o un segno di dollaro $ Non può iniziare con un numero Dopo il primo carattere si possono usare anche numeri Il nome deve essere un nome comune qualsiasi ad eccezione di parole riservate al linguaggio

Quali nomi possiamo usare per chiamare le variabili?

Il nome deve iniziare con una lettera, un segno underscore _, o un segno di dollaro $

Non può iniziare con un numero

Dopo il primo carattere si possono usare anche numeri

Il nome deve essere un nome comune qualsiasi ad eccezione di parole riservate al linguaggio

Variabile di tipo oggetto (reference) Non esiste in realtà nessuna cosa che è una variabile oggetto C’è solo una variabile riferimento all’oggetto Un riferimento contiene i bit che rappresentano un modo per accedere all’oggetto Questa variabile non contiene l’oggetto, ma contiene qualcosa simile ad un puntatore o ad un indirizzo dell’oggetto. Tuttavia, ad eccezione di java, nessuno sa cosa c’è dentro una variabile riferimento. Nessuno ha la possibilità di conoscerne il valore Sappiamo solo che rappresenta uno ed un sol oggetto Solo java sa come usarlo per trovare la strada per raggiungere l’oggetto

Non esiste in realtà nessuna cosa che è una variabile oggetto

C’è solo una variabile riferimento all’oggetto

Un riferimento contiene i bit che rappresentano un modo per accedere all’oggetto

Questa variabile non contiene l’oggetto, ma contiene qualcosa simile ad un puntatore o ad un indirizzo dell’oggetto. Tuttavia, ad eccezione di java, nessuno sa cosa c’è dentro una variabile riferimento. Nessuno ha la possibilità di conoscerne il valore

Sappiamo solo che rappresenta uno ed un sol oggetto

Solo java sa come usarlo per trovare la strada per raggiungere l’oggetto

Variabile di riferimento e variabile primitiva Non si può mettere un oggetto dentro una variabile Non esiste nessuna tazza gigante che si possa espandere per contenere la dimensione di qualsiasi oggetto Gli oggetti vivono in un solo posto Mentre una variabile primitiva è piena di bit che rappresentano il valore effettivo della variabile, una variabile di riferimento è piena di bit che rappresentano un modo per ritrovare l’oggetto

Non si può mettere un oggetto dentro una variabile

Non esiste nessuna tazza gigante che si possa espandere per contenere la dimensione di qualsiasi oggetto

Gli oggetti vivono in un solo posto

Mentre una variabile primitiva è piena di bit che rappresentano il valore effettivo della variabile, una variabile di riferimento è piena di bit che rappresentano un modo per ritrovare l’oggetto

Una variabile di riferimento come un telecomando Usiamo l’operatore “.” su di una variabile di riferimento per inviare il messaggio: Usa la cosa prima del punto per fare la cosa dopo il punto Ad esempio: mydog.bark(); significa: usa l’oggetto puntato dalla variabile myDog per invocare l’esecuzione del suo metodo bark(). Quando usi l’operatore “.” su di un riferimento, pensa al premere un bottone di un telecomando

Usiamo l’operatore “.” su di una variabile di riferimento per inviare il messaggio:

Usa la cosa prima del punto per fare la cosa dopo il punto

Ad esempio:

mydog.bark();

significa: usa l’oggetto puntato dalla variabile myDog per invocare l’esecuzione del suo metodo bark().

Quando usi l’operatore “.” su di un riferimento, pensa al premere un bottone di un telecomando

Cosa è memorizzato in una variabile In una variabile è memorizzato un valore In quelle primitive il valore del numero o di un carattere o di ciò che la variabile significa Pure nei riferimenti d’oggetto c’è un valore, qualcosa c’è nella tazza, ma questa volta il suo valore è un telecomando

In una variabile è memorizzato un valore

In quelle primitive il valore del numero o di un carattere o di ciò che la variabile significa

Pure nei riferimenti d’oggetto c’è un valore, qualcosa c’è nella tazza, ma questa volta il suo valore è un telecomando

Le tre fasi, dichiarazione, creazione, assegnamento di un oggetto

Fine della puntata

Add a comment

Related presentations

Related pages

Variables (The Java™ Tutorials > Learning the Java ...

This beginner Java tutorial describes fundamentals of programming in the Java programming language
Read more

Java: variabili di ambiente - YouTube

Come impostare le variabili di ambiente Java su Windows.
Read more

Variabili, costanti e dichiarazioni - HTML.it

Come dichiarare le variabili in JavaScript in maniera esplicita ed implicita, cosa sono le costanti e come funziona lo Strict Mode.
Read more

[ITA] JAVA tutorial #2: le variabili per principianti ...

Secondo tutorial di Java: usando Eclipse sono spiegati in modo semplice i fondamenti sulle variabili. Scusatemi se ogni tanto mi sono ...
Read more

Java Practices -> Don't declare local variables before use

Concise presentations of java programming practices, tasks, and conventions, amply illustrated with syntax highlighted code examples.
Read more

Modulo 2: Strutture fondamentali della programmazione Java

Prima di tutto Java è case-sensitive: distingue tra lettere maiuscole e minuscole. ... (in Java non è possibile utilizzare variabili non inizializzate).
Read more

Variabili d'ambiente on Vimeo

Variabili d'ambiente. from Domenico Boncoddo 20 hours ago All Audiences. ... variabili; ambiente; java; Also Check Out . More stuff from Domenico Boncoddo ...
Read more

Variabili ambiente e Tomcat 5.5.9 | Mandrivaitalia.org

ho bisgono di settare le variabili JAVA_HOME e JRE_HOME per far funzionare a dovere tomcat. ho provato a inserire nel file bashrc queste 2 righe:
Read more

passaggio variabili tra asp e javascript - HighDots Forums

ciao a tutti vorrei sapere se è possibile passare valori contenuti in un array di asp in variabili di javascript. in particolare ho un array con una
Read more