lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO...

13
OOP Gli oggetti e la memoria CC BY ALESSANDRO URSOMANDO DIAPOSITIVA 2 COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa() void reset()

Transcript of lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO...

Page 1: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

OOP

Gli oggetti e la memoria

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 2

COSA ACCADE IN MEMORIA

� OOP

Contatore

int valore

void incrementa()

void decrementa()

void reset()

��������������� ���������� ��

����������� ��������������� ���������� �������������

�������������� ������������� ����������������������� ������������������������������������������������������ �������������

Page 2: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 3

��������������� ���������� ��

����������� ��������������� ���������� �������������

COSA ACCADE IN MEMORIA

� OOP

Contatore

int valore

void incrementa()

void decrementa()

void reset()

�������������� ������������� ����������������������� ������������������������������������������������������ �������������

1000 c

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 4

��������������� ���������� ��

����������������������������������� ���������� �������������

��������������� �� ����������������� �������� ���������������������� ����������������������������

COSA ACCADE IN MEMORIA

� OOP

Contatore

int valore

void incrementa()

void decrementa()

void reset()

�������������� ������������� ����������������������� ������������������������������������������������������ �������������

����������� � ����� �������������������������������������������

1000 c

1076 valore

Page 3: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 5

��������������� ���������� ��

����������������������������������� ���������� �������������

COSA ACCADE IN MEMORIA

� OOP

Contatore

int valore

void incrementa()

void decrementa()

void reset()

�������������� ������������� ����������������������� ������������������������������������������������������ �������������

��������������� �� ����������������� �������� ���������������������� ����������������������������

����������� � ����� �������������������������������������������

����� � �� ����������������� �����������������1076 valore

1000 c

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 6

������� �����

��������������� ���������� ��

����������������������������������� ���������� �������������

COSA ACCADE IN MEMORIA

� OOP

Contatore

int valore

void incrementa()

void decrementa()

void reset()

�������������� ������������� ����������������������� ������������������������������������������������������ �������������

!� ���� �������� ������������������������������"�����#

��������������� �� ����������������� �������� ���������������������� ����������������������������

����������� � ����� �������������������������������������������

����� � �� ����������������� �����������������1076 valore

1000 c

Page 4: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 7

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

������������������������������

2048 d

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 8

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

������ ����� �����������������

2048 d

1994 giorno

mese

anno

������������������������������

Page 5: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 9

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

2048 d

1994 giorno

mese

anno

�������� ���� �������

������ ����� �����������������

������������������������������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 10

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

2048 d

1994 giorno

mese

anno�����������������������������

2010 k

�������� ���� �������

������ ����� �����������������

������������������������������

Page 6: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 11

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

2048 d

1994 giorno

mese

anno

2010 k ������ ��� �������

�����������������������������

�������� ���� �������

������ ����� �����������������

������������������������������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 12

Data

int giorno

int mese

int anno

...

FACCIAMO UN ALTRO ESEMPIO

� OOP

2048 d

1994 giorno

mese

anno

2010 k

���� ��� ������������ ��

������ ��� �������

�����������������������������

�������� ���� �������

������ ����� �����������������

������������������������������

Page 7: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

OOP

Il costruttore

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 14

IL COSTRUTTORE IMPLICITO

� OOP

$��������������� ������� ������������%� ��& ������������� �& ����������

����������������'������������������

!� �������������(������������� �����������������������������������

)���������� �%� ���������������� ��������������������������������*"������ ����������� ���������������#

��������������� ���������� ������������ ��

����������� ����� �������� ���!�"������ �

!� ��������� ��� ������������������������������

$�������+�,��������� ����� ��� ��������� ���������������������������������'�������������������� ������������������������������ ������ �

���� ����-�������� � ������� ������ ��������������+

����������� ����� ��

��������������� ���������� ��

Page 8: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 15

IL COSTRUTTORE PROPRIO

� OOP

����������������� ��������������������� ���������� �����������

# $������� ���� %��������$ ����� ������&�����&������

���������� �����

���' �������������������������(

����� ����������� ������� � �������������� ������ ����� ����������������� ������ ���� � ������������+�

�������-� ����������� �����������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 16

# $������� ���� %��������$ ����� ������&�����&������

���������� �����

���' �������������������������(

IL COSTRUTTORE PROPRIO

� OOP

����������������� ��������������������� ���������� �����������

# $������� ���� %��������$ ����� ������&�����&������

���������� ���������� �%

������� )*�������+�������)*,-�

(

���' �������������������������(

����� ����������� ������� � �������������� ������ ����� ����������������� ������ ���� � ������������+�

�������-� ����������� �����������

$� ����� ��������������������

������������������������� � ��

����(��������������������������������������������� � � ��

������������ ���������

����������� ����� �������� ���!�"������ �

Page 9: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 17

IL COSTRUTTORE CONPARAMETRI

� OOP

$������������ ������ � ������������������������� ������������������������������������� ��������������

����������������������������� ����� ����

�������#������������������ �)*������� �+������� �)*,-�

# $������� ���� %��������$ ����� ������&�����&������

���������� ������������� �&���� �&���� � �%

��������������������������

(

���' �������������������������(

������������������������������� ��������������������������

����������� �����).&�).&�)*-* ��

.�� � �����%���� ��������

�� ����������������������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 18

# $������� ���� %��������$ ����� ������&�����&������

���������� ������������� �&���� �&���� � �%

��������������������������

(

���' �������������������������(

� OOP

!��������������������������������������������� �������� �

# $������� ���� %��������$ ����� ������&�����&������

���������� ������������� ������&���� �&���� � �%

�������������������������������

(

���' �������������������������(

���%� ���� �������� �����������

IL COSTRUTTORE CONPARAMETRI

����� ����������� ��� ��������/

Page 10: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 19

# $������� ���� %��������$ ����� ������&�����&������

���������� ������������� ������&���� �&���� � �%

����������� ������������������������

(

���' �������������������������(

� OOP

���%� ����� �� ��� ������������������� ����� ����������������������������������

# $������� ���� %��������$ ����� ������&�����&������

���������� ������������� ������&���� �&���� � �%

�������������������������������

(

���' �������������������������(

IL RIFERIMENTO THIS

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 20

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

(

PIÙ DI UN COSTRUTTORE

� OOP

0������������ ���������� ��������������� � ������ �������1��������� ��������

Page 11: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 21

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

(

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� ������������#��������

/������ %

���� ��� ��� ������� ��

(

(

PIÙ DI UN COSTRUTTORE

� OOP

0������������ ���������� ��������������� � ������ �������1��������� ��������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 22

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� ������������#��������

/������ %

���� ��� ��� ������� ��

(

(

PIÙ DI UN COSTRUTTORE

� OOP

0������������ ���������� ��������������� � ������ �������1��������� ��������

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� ������������#��������

/������ %

���� ��� ��� ������� ��

(

������� ���������� ��#��������

/��������� �& ��� � %

���� ��

��� ��� ��

������� ��

(

(

Page 12: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 23

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� ������������#��������

/������ %

���� ��� ��� ������� ��

(

������� ���������� ��#��������

/��������� �& ��� � %

���� ��

��� ��� ��

������� ��

(

(

PIÙ DI UN COSTRUTTORE

� OOP

0������������ ���������� ��������������� � ������ �������1��������� ��������

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� ������������#��������

/������ %

���� ��� ��� ������� ��

(

������� ���������� ��#��������

/��������� �& ��� � %

���� ��

��� ��� ��

������� ��

(

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

(

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 24

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

(

PIÙ DI UN COSTRUTTORE

� OOP

2���� ������� ����������������� ����� ����������� ������������� ���������������������������������������

Page 13: lezione 02 - memoria e costruttoriOOP Gli oggetti e la memoria CC BY DIAPOSITIVA 2 ALESSANDRO URSOMANDO COSA ACCADE IN MEMORIA OOP Contatore int valore void incrementa() void decrementa()

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 25

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

(

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

������� ������������#��������

/������ %

������&�&� �

(

(

PIÙ DI UN COSTRUTTORE

� OOP

2���� ������� ����������������� ����� ����������� ������������� ���������������������������������������

CC BY

ALESSANDRO URSOMANDODIAPOSITIVA 26

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

������� ������������#��������

/������ %

������&�&� �

(

(

# $�� ���� /������%

��������$ ��

��� ���& ��� ��& �������

������� �������������#��������

/��������� �& ��� �& ��� � %

���� ��

��� ��� ��

������� ��

(

������� ������������#��������

/������ %

������&�&� �

(

������� ���������� ��#��������

/��������� �& ��� � %

������&�&� �

(

(

PIÙ DI UN COSTRUTTORE

� OOP

2���� ������� ����������������� ����� ����������� ������������� ���������������������������������������