Junior — Middle
Como distinguir os tipos de dados básicos dos objetos de referência numa linguagem de programação?
sobes.tech IA
Resposta da IA
Nos linguagens de programação, os tipos de dados básicos (primitivos) e objetos referenciados diferem na forma como os dados são armazenados e transmitidos.
- Tipos de dados básicos (por exemplo, int, float, boolean em Java/Android) são armazenados na pilha e contêm o valor diretamente. Ao passar uma variável, o valor em si é copiado.
- Objetos referenciados (por exemplo, objetos de classes) são armazenados no heap, e a variável armazena uma referência (ponteiro) ao objeto. Ao passar, apenas a referência é copiada, não o objeto em si.
Exemplo:
int a = 5;
int b = a; // copia o valor 5
b = 10;
// a ainda é 5
String s1 = new String("hello");
String s2 = s1; // copia a referência ao objeto
s2 = "world";
// s1 ainda é "hello" (String em Java é imutável)
Dessa forma, os tipos básicos armazenam os dados diretamente, enquanto os objetos referenciados fazem isso através de um ponteiro para o objeto na memória.