Conhecendo variáveis e constantes no Java \| TreinaWeb               Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 22 Horas 

 25 Min 

 05 Seg 

   Tempo restante da oferta: 22 25 05 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](https://www.treinaweb.com.br#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

     [ Início ](https://www.treinaweb.com.br) [ Artigos ](https://www.treinaweb.com.br/blog) Conhecendo variáveis e constantes no Java  [ Java ](https://www.treinaweb.com.br/blog/categoria/java) 

# Conhecendo variáveis e constantes no Java

 Conheça neste artigo as variáveis, tipos de dados e constantes da linguagem Java.

 [ Marylene Guedes ](https://www.treinaweb.com.br/blog/autor/marylene-guedes) 6 anos atrás

  ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/01/VARIÁVEIS-JAVA.png)  

 O [Java](https://www.treinaweb.com.br/blog/o-que-e-e-como-comecar-com-java/ "Java") é uma linguagem criada na década de 90 por uma equipe de desenvolvedores sob supervisão de James Gosling dentro da Sun Microsystems (que foi adquirida pela Oracle posteriormente). A intenção inicial do Java era prover uma linguagem completamente multiplataforma, já que a equipe acreditava que haveria uma convergência muito forte entre computadores e outros dispositivos, como geladeiras e TVs por exemplo.

A linguagem teve e tem uma adoção muito forte no mercado, estando entre as três linguagens mais utilizadas no mundo. A força da linguagem e da plataforma se justificam pelo seu aspecto multiplataforma, o tamanho e a força da comunidade envolvida e seu ambiente de execução de alta performance através das múltiplas implementações da JVM existentes.

### Características de tipagem

O Java é uma linguagem de [tipagem estática](https://www.treinaweb.com.br/blog/quais-as-diferencas-entre-tipagens-estatica-ou-dinamica-e-forte-ou-fraca/ "tipagem estática"), ou seja, existe um sistema de tipos bem definido e que é validado durante o tempo de compilação do código. Para isso, é necessário definir tipos explícitos para as variáveis que são criadas.

Existem algumas vantagens atreladas à utilização de sistemas de tipos estáticos como: equívocos de tipagem geralmente são percebidos com mais facilidade, além de que os processos de refatoração tendem a ser mais a prova de equívocos. Se acaba sendo necessário trocar o tipo de um parâmetro de uma função, por exemplo, o código não irá compilar até que todos os locais que referenciam o método passem a especificar o tipo correto.

Mas também existem algumas desvantagens: linguagens com tipagem estática têm tendência a serem mais verbosas, já que você precisa sempre estar declarando os tipos das variáveis. Além disso, a tipagem estática pode passar uma falsa sensação de segurança em alguns cenários, ainda mais no caso de versões mais novas das linguagens, que geralmente trabalham com inferência de tipagem, que é o caso do Java.

[  ![Java - Fundamentos](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/java.svg)   Curso Java - Fundamentos Conhecer o curso ](https://www.treinaweb.com.br/curso/java-fundamentos)

### Tipos de dados padrões no Java

Por padrão, o Java possui em sua biblioteca padrão alguns tipos:

• **Byte:** um inteiro com valor 8 bits, onde seu intervalo de valores vai do -128 até o 127. É um dado leve, que ocupa pouco espaço em memória;

• **Char:** trata-se de um único caractere unicode de 16 bits. Seu intervalo de valores vai do ‘\\u0000’ ou 0 até o valor máximo ‘\\uffff’ ou 65535. É utilizado para armazenar caracteres de maneira isolada;

• **Short:** trata-se de um valor inteiro de 16 bits. Seu intervalo de valores vai do -32.768 até o 32.767;

• **Int:** trata-se de um valor inteiro de 32 bits. Suporta valores de -2.147.483.648 a 2.147.483.647;

• **Long:** define um valor inteiro de 64 bits. Suporta valores de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807;

• **Boolean:** é um dos tipos de dados mais simples, pois ele pode armazenar apenas dois valores: true (verdadeiro) ou false (falso). É empregado para realizar testes lógicos, dentro de estruturas de decisão e repetição, por exemplo.

• **Float:** trata-se de um tipo de dado de ponto flutuante de 32 bits. Isso quer dizer que ele permite armazenar valores decimais entre 6 e 7 casas. Porém, o armazenamento em memória pode não representar necessariamente o valor repassado. Por exemplo, um float definido com “0,001” pode acabar sendo armazenado como “0,00100001”, e isso não somente no Java, já que isso é decorrência dos pontos flutuantes em geral. Por isso, o tipo float não deve ser usado para operações que precisam passar por várias operações aritméticas, como no caso de sistemas financeiros. Isso porque, a primeira vista, essa imprecisão pode não impactar, mas na sequência de operações realizadas, estas imprecisões podem começar a aparecer nos resultados;

• **Double:** representa um ponto flutuante de 64 bits. Por isso, ele permite armazenar números de até cerca de 15 casas decimais. A observação para o tipo float também é válida para o tipo double: por ser um tipo de dado que é armazenado por aproximação de valores, ele não deve ser utilizado em operações que demandam precisão absoluta.

### Regras de nomeação de variáveis

A fim de manter uma mínima padronização do código-fonte, o Java estabelece alguns padrões para a definição de nomes para as variáveis:

• Variáveis têm seu nome definido com a primeira letra minúscula. Caso se trate de um nome composto, a primeira letra deve ser minúscula, enquanto as outras devem ser maiúsculas. Espaços não podem ser utilizados no meio dos nomes das variáveis;

• As variáveis não devem contar com caracteres especiais em seu nome. As únicas exceções são o underline (\_) e o cifrão ($) em algumas situações, como na definição de estruturas estáticas;

• Os nomes devem ser declarativos e auto-explicativos;

• As variáveis são case-sensitive. Isso quer dizer que “nomeDoAutor” é diferente de “nomeDoautor”, de “NomeDoAutor” e de “nomedoautor”, por exemplo.

As variáveis abaixo seguem as convenções de nomenclatura:

```java
static int MAIORIDADE_PENAL = 18; // trata-se de um atributo estático

String nomeDoAluno = “”;
int idade = 0;

```

As variáveis abaixo ferem algumas das convenções:

```java
int a = 0; // nome não muito claro
String NomeDaPessoa = “”; // variável começando com letra maiúscula
int _tamanhoDaPessoa = 0; // nome de variável começando com caractere especial.

```

### Java e as constantes

Constantes, sob um ponto de vista prático são como variáveis, só que com o ponto de que seu valor não pode ser modificado. Isso quer dizer que, se você declara uma constante chamada MAIORIDADE\_PENAL com o valor 18, esse valor não poderá ser jamais modificado durante a execução da aplicação.

O Java não possui formalmente o conceito de constantes, assim como acontece em outras linguagens como C# e C++. Embora a palavra-chave “const” seja uma palavra reservada na especificação do Java (ou seja, você não pode nomear nenhuma estrutura como “const”), ela não tem nenhum significado para o compilador. Isso foi uma decisão de design durante a criação do Java. Isso tem relação com a maneira como o Java lida com a referência com as variáveis, as definindo entre value-types e reference-types.

A maneira mais comum para “simular” constantes no Java é através da combinação das palavras-chave static e final.

```java
public static final int MAIORIDADE_PENAL = 18;

```

Neste exemplo:

• O **static** faz com que a variável em questão, de maneira prática, não esteja “amarrada” a um objeto. É como se ela, apesar de estar dentro de uma classe por convenções da linguagem, na verdade não pertencesse somente ao escopo daquela classe. Em termos mais profundos, isso implica até mesmo na localização na memória onde a variável é armazenada (nas versões mais novas da JVM, atributos estáticos ficam em uma área de memória chamada metaspace);

• O **final** indica basicamente que o conteúdo da variável não pode ser modificado (aqui, o aspecto de constante é definido), porém, isso obriga a inicialização da variável junto com sua definição.

Se você quer conhecer mais sobre essa linguagem, não se esqueça de acessar nosso [Guia da linguagem Java](https://www.treinaweb.com.br/blog/guia-da-linguagem-java/ "Guia da linguagem Java"). Te esperamos lá :)

- [ #Java ](https://www.treinaweb.com.br/blog/tag/java)
- [ #variáveis ](https://www.treinaweb.com.br/blog/tag/variaveis)
- [ #constante ](https://www.treinaweb.com.br/blog/tag/constante)

  Autor

 ![Marylene Guedes](//secure.gravatar.com/avatar/5b0ba52b3705f298802db58782656bbc?d=mm)## Marylene Guedes

 Responsável pelo sucesso do cliente na TreinaWeb. Graduada em Gestão de Tecnologia da Informação pela FATEC Guaratinguetá, além de estudante de UX/UI. 

 [Todos os artigos](https://www.treinaweb.com.br/blog/autor/marylene-guedes)  ## Continue estudando

 Transforme leitura em prática com os cursos e formações da TreinaWeb.

 [Ver cursos](https://www.treinaweb.com.br/cursos)   

  Continue lendo## Artigos relacionados

- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/02/CONHECENDO-VÁRIAVEIS-CONSTANTES-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Conhecendo variáveis e constantes no JavaScript ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-no-javascript) 

     Neste artigo vamos aprender a declarar e a utilizar constantes e variáveis no JavaScript, entendendo quando definir var, let e const.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/como-instalar-o-dart-e-executar-seu-primeiro-exemplo-400x280.png)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     6 anos atrás

    ##  [ Conhecendo variáveis e constantes no Dart ](https://www.treinaweb.com.br/blog/conhecendo-variaveis-e-constantes-no-dart) 

     Neste artigo conheceremos as variáveis e constantes no Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/05/GUIA-LINGUAGEM-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Guia da Linguagem JavaScript ](https://www.treinaweb.com.br/blog/guia-da-linguagem-javascript) 

     Neste Guia da Linguagem Javascript vamos abordar aspectos fundamentais, como: tipos de dados, variáveis, objetos, arrays e muito mais.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/ARRAYS-OBJETOS-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Trabalhando com arrays e objetos no JavaScript ](https://www.treinaweb.com.br/blog/trabalhando-com-arrays-e-objetos-no-javascript) 

     Confira neste artigo como trabalhar com Arrays e Objetos no JavaScript. Vamos aprender a declarar e manipular Arrays e Objetos com exemplos.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/GUIA-LINGUAGEM-JAVA-400x280.png)  [ Java ](https://www.treinaweb.com.br/blog/categoria/java) 

     6 anos atrás

    ##  [ Guia da linguagem Java ](https://www.treinaweb.com.br/blog/guia-da-linguagem-java) 

     Confira neste guia os principais tópicos para iniciar seus estudos na linguagem Java.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/11/ARTIGO-DART-400x280.jpg)  [ Dart ](https://www.treinaweb.com.br/blog/categoria/dart) 

     4 anos atrás

    ##  [ Guia da linguagem dart ](https://www.treinaweb.com.br/blog/guia-da-linguagem-dart) 

     Nesse guia da linguagem Dart você aprenderá o necessário para criar os seus primeiros softwares com a linguagem de programação Dart.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2022/05/como-instalar-o-csharp-e-nosso-primeiro-exemplo-400x280.png)  [ C# ](https://www.treinaweb.com.br/blog/categoria/csharp) 

     4 anos atrás

    ##  [ Guia da linguagem C# ](https://www.treinaweb.com.br/blog/guia-da-linguagem-csharp) 

     Nesse guia de C# você aprenderá o necessário para criar os seus primeiros softwares com a linguagem de programação C#. Acesse agora mesmo!

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/03/guia-da-linguagem-python-400x280.png)  [ Python ](https://www.treinaweb.com.br/blog/categoria/python) 

     6 anos atrás

    ##  [ Guia da linguagem Python ](https://www.treinaweb.com.br/blog/guia-da-linguagem-python) 

     Entenda os principais conceitos para iniciar seus estudos neste guia da linguagem Python.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/06/NODE-SQUELIZE-MYSQL-400x280.png)  [ Javascript ](https://www.treinaweb.com.br/blog/categoria/javascript) 

     5 anos atrás

    ##  [ Usando Sequelize ORM com Node e Express ](https://www.treinaweb.com.br/blog/usando-sequelize-orm-com-node-e-express) 

     Vamos aprender a configurar uma aplicação com banco de dados MySQL usando Sequelize ORM com Node.js e Express.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/08/EJS-400x280.png)  [ Node ](https://www.treinaweb.com.br/blog/categoria/node-js) 

     5 anos atrás

    ##  [ Utilizando template engine EJS com Node.js ](https://www.treinaweb.com.br/blog/utilizando-template-engine-ejs-com-node-js) 

     Neste artigo vamos aprender a utilizar a Template Engine EJS com Node.js e também alguns recursos interessantes desta ferramenta.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/06/27155937/js-symbol-400x280.png)  [ Javascript ](https://www.treinaweb.com.br/blog/categoria/javascript) 

     7 anos atrás

    ##  [ JavaScript: você sabe o que são e por que usar Symbols? ](https://www.treinaweb.com.br/blog/javascript-voce-sabe-o-que-sao-e-por-que-usar-symbols) 

     Descubra a utilidade dos Symbols no JavaScript, novo tipo primitivo introduzido no ES2015.

     Ler artigo
- ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2021/04/DOM-JAVASCRIPT-400x280.png)  [ Desenvolvimento Front-end ](https://www.treinaweb.com.br/blog/categoria/desenvolvimento-front-end) 

     6 anos atrás

    ##  [ Trabalhando com JavaScript no navegador ](https://www.treinaweb.com.br/blog/trabalhando-com-javascript-no-navegador) 

     Ao utilizar JavaScript para desenvolvimento web, é necessário entender o funcionamento do DOM (Document Object Model). O DOM é o que permite o acesso aos elementos HTML/XML para manipulá-los de forma que seja interessante para os nossos objetivos como desenvolvedor.

     Ler artigo

## Um ano de acesso total para você viver de programação.

 Todos os cursos e formações da TreinaWeb numa única assinatura, com professores que atuam no mercado, suporte direto e certificados. Do primeiro `console.log` ao mercado de trabalho.

- **1 ano** de acesso a **todos os cursos**
- Cursos novos **toda semana**
- Suporte **direto com professores**
- Plano de carreira **personalizado**
- **Certificados digitais** inclusos
- **Aplicativos** para Android e iOS, com **acesso offline**

    **Garantia incondicional de satisfação**  Teste por 7 dias e, se não fizer sentido para você, devolvemos seu dinheiro.

### Acesso completo a todos os cursos e dezenas de Formações.

 12 meses 

  Economize R$ 840,00  54% OFF 

 de 12x R$ 129,00 por apenas

 12x  R$ 59,00

 sem juros no cartão de crédito ou R$ 599,00 à vista

  Oferta termina em  **22h 25min 05s**

- Acesso imediato e ilimitado durante 1 ano.
- Plano de carreira personalizado.
- Suporte direto com professores.
- E muito mais!

 [Matricule-se agora](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26)

     [                ](https://www.treinaweb.com.br) Escola online de programação, tecnologia e IA.

- [  ](https://www.facebook.com/TreinaWeb/)
- [  ](https://www.instagram.com/treinaweb/)
- [  ](https://www.youtube.com/user/TreinaWeb)
- [  ](https://twitter.com/treinaweb)
- [  ](https://www.linkedin.com/company/treinaweb)
- [  ](https://github.com/treinaweb)

## Inscreva-se em nossa newsletter

Receba lançamentos, promoções e novidades.

   Seu nome     Seu WhatsApp     Seu melhor e-mail   Inscrever-se 

## Cursos

- [ Base para Devs ](https://www.treinaweb.com.br/categoria/base-para-devs)
- [ Front-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-front-end)
- [ Back-end ](https://www.treinaweb.com.br/categoria/desenvolvimento-back-end)
- [ Mobile ](https://www.treinaweb.com.br/categoria/desenvolvimento-mobile)
- [ Bancos de Dados ](https://www.treinaweb.com.br/categoria/bancos-de-dados)
- [ Cloud ](https://www.treinaweb.com.br/categoria/cloud-computing)
- [ IA ](https://www.treinaweb.com.br/categoria/ia)
- [ E mais ](https://www.treinaweb.com.br/categoria/e-mais)
- [ Ver todos os cursos ](https://www.treinaweb.com.br/cursos)

## Conteúdo

- [ Formações ](https://www.treinaweb.com.br/formacoes)
- [ Projetos práticos ](https://www.treinaweb.com.br/projetos-praticos)
- [ Direto ao ponto ](https://www.treinaweb.com.br/direto-ao-ponto)
- [ Planos ](https://www.treinaweb.com.br#assinatura)
- [ Depoimentos ](https://www.treinaweb.com.br#depoimentos)
- [ Comunidade ](https://www.treinaweb.com.br#comunidade)
- [ Corpo docente ](https://www.treinaweb.com.br#docente)

## A empresa

- [ Sobre a TreinaWeb ](https://www.treinaweb.com.br#sobre)
- [ Perguntas frequentes ](https://www.treinaweb.com.br#faq)
- [ Vantagens de estudar na TreinaWeb ](https://www.treinaweb.com.br/vantagens-de-estudar-na-treinaweb)
- [ Cursos para empresas ](https://www.treinaweb.com.br/empresas)
- [ Sugira um novo curso ](https://www.treinaweb.com.br/sugerir-curso)
- [ Trabalhe conosco ](https://www.treinaweb.com.br/trabalhe-conosco)
- [ Artigos ](https://www.treinaweb.com.br/blog)
- [ Desenvolvedores e agentes ](https://www.treinaweb.com.br/developers)
- [ Contato ](https://www.treinaweb.com.br/contato)
- [ Política de privacidade ](https://www.treinaweb.com.br/politica-de-privacidade)
- [ Termos de uso ](https://www.treinaweb.com.br/termos-de-uso)

## Baixe nosso aplicativo

 [   Disponível na **App Store**  ](https://apps.apple.com/us/app/treinaweb/id1322729447) [   Disponível no **Google Play**  ](https://play.google.com/store/apps/details?id=br.com.treinaweb.mobile) 

  Av. Paulista, 1765, Conj 71 e 72 · Bela Vista · São Paulo · SP · 01311-200   © 2004 – 2026 TreinaWeb Tecnologia LTDA · CNPJ 06.156.637/0001-58
