java é uma linguagem fortemente tipada, ou o que significa que todas as variáveis precisam ter seu tipo declarado. os tipos definem a natureza dos dados que serão manipulados, e influenciam diretamente o comportamento, a memória e a segurança do programa.
tipos primitivos
representam os valores mais básicos que podem ser usados no código. são pré-definidos pela linguagem e não são objetos, oferecendo simplicidade e desempenho otimizado. são armazenados diretamente na memória. são ideais para operações matemáticas, controle de fluxo e manipulação básica de dados.
| tipo | descrição | tamanho |
|---|---|---|
int | números inteiros | 32 bits |
double | números de ponto flutuante de precisão dupla | 64 bits |
byte | números inteiros pequenos | 8 bits |
long | números inteiros grandes | 64 bits |
float | números de ponto flutuante de precisão simples | 32 bits |
boolean | valores lógicos: true ou false | 1 bit |
char | um único caractere unicode | 16 bits |
tipos de referência
diferente dos primitivos, os tipos de referência não armazenam o valor diretamente, mas sim um endereço na memória que aponta para um objeto. eles permitem modelar estruturas complexas, e são fundamentais na programação orientada a objetos.
| tipo | descrição |
|---|---|
String | sequência de caracteres, como "Olá Mundo" |
Array | coleção de elementos do mesmo tipo, como int[], String[] |
Class | estrutura definida pelo programador para representar objetos e comportamentos |
Interface | contrato que define métodos que devem ser implementados por uma classe |
Enum | conjunto fixo de constantes nomeadas, como enum Dia { SEGUNDA, TERÇA } |
Wrapper | classes que encapsulam tipos primitivos (Integer, Double, Boolean etc.) |
Collection | estruturas de dados prontas, como List, Set, Map |
Object | superclasse de todas as classes em java, base para herança e polimorfismo |