Quando criamos um programa, devemos saber com que tipo de informacao estamos lidando e para qual finalidade ela sera util. Afinal, devemos ter conhecimento disso para declararmos corretamente o tipo de dado que a variavel ira suportar.Java e uma linguagem de forte tipografia. Isso significa que as variaveis devem ser declaradas respeitando-se a sintaxe basica "tipo identificador;". Ha oito tipos de dados primitivos em Java, que podem ser classificados em tres categorias: logicos, numericos e de caracteres.Vamos entender cada um delas: Tipos logicos boolean Representam apenas 1 bit de informacao (0 ou 1). Podem assumir apenas os valores true e false. Tipos caractere char Representam notacao de caracteres de 16 bits (2 bytes) para formato Unicode UTF-16. Podem assumir caracteres entre '\u0000' a '\uffff' e valores numericos entre 0 a 65535. Tipos numericos inteiros byte Representam numeros inteiros de 8 bits (1 byte). Podem assumir valores entre -128 a 127. short Representam numeros inteiros de 16 bits (2 bytes). Podem assumir valores entre -32.768 ate 32.767. Int Representam numeros inteiros de 32 bits (4 bytes). Podem assumir valores entre -2.147.483.648 ate 2.147.483.647. long Representam numeros inteiros de 64 bits (8 bytes). Podem assumir valores entre -9.223.372.036.854.775.808 ate 9.223.372.036.854.775.807. Tipos numericos reais float Representam numeros reais de 32 bits com precisao simples. Podem assumir valores de ponto flutuante com formato definido pela especificacao IEEE 754. double Representam numeros reais de 64 bits com precisao dupla. Assim como o float. Podem assumir valores de ponto flutuante com formato definido pela especificacao IEEE 754. Alem dos tipos primitivos, existe o tipo String, que funciona como um container de chars, possibilitando a atribuicao de uma sequencia de caracteres delimitados por aspas duplas (""). Voce provavelmente pensara nela como um tipo primitivo, mas uma String e uma classe especial fornecida pela linguagem para prover suporte a cadeia de caracteres. Veremos mais sobre classes e objetos mais adiante.Vamos praticar um pouco agora: crie uma classe com o nome TiposPrimitivos.java e escreva o codigo conforme o exemplo abaixo:public class TiposPrimitivos { public static void main(String[] args){ // Tipos numericos inteiros byte byteMinimo = -127; byte byteMaximo = 127; short shortMaximo = -32768; short shortMinimo = 32767; int intMaximo = -32767; int intMinimo = 32767; long longMaximo = -9223372036854775808l; long longMinimo = 9223372036854775807l; // Tipos numericos reais float floatNum = 78.88776f; double doubleNum = 922337.559874387184073645; // tipos logicos boolean booleanTrue = true; boolean booleanFalse = false; // tipos caractere char charMinimo = 0; char charMaximo = 65535; char charLetra = 'A'; char charUnicode = '\u0065'; String stringQualquer = "Uma string qualquer"; //Apresentando os Resultados System.out.println(byteMinimo); System.out.println(byteMaximo); System.out.println(shortMinimo); System.out.println(shortMaximo); System.out.println(intMinimo); System.out.println(intMaximo); System.out.println(longMinimo); System.out.println(longMaximo); System.out.println(floatNum); System.out.println(doubleNum); System.out.println(charMinimo); System.out.println(charMaximo); System.out.println(charLetra); System.out.println(charUnicode); System.out.println(stringQualquer); }}Ao executar o codigo acima, voce vera que, mesmo que se atribua um numero qualquer a uma variavel do tipo char, ela sera tratada pelo metodo println() como um caractere, nao como um numero. Tambem vera que uma letra "F" acompanha o valor atribuido a variavel floatNumero e que a letra "L" acompanha o valor atribuido as variaveis longMinimo e longMaximo. Essas letras sao sufixos de literais. Elas indicam o tipo