sexta-feira, 21 de dezembro de 2012

O que são Tipos Primitivos em Java?


Tipos Primitivos do Java


Quando criamos um programa, devemos saber com que tipo de informação estamos lidando e para qual finalidade ela será útil. Afinal, devemos ter conhecimento disso para declararmos corretamente o tipo de dado que a variável irá suportar.

Java é uma linguagem de forte tipografia. Isso significa que as variáveis devem ser declaradas respeitando-se a sintaxe básica "tipo identificador;". Há oito tipos de dados primitivos em Java, que podem ser classificados em três categorias: lógicosnuméricos e de caracteres.

Vamos entender cada um delas:


Tipos lógicos
booleanRepresentam apenas 1 bit de informação (0 ou 1). Podem assumir apenas os valorestrue e false.
Tipos caractere
charRepresentam notação de caracteres de 16 bits (2 bytes) para formato Unicode UTF-16. Podem assumir caracteres entre '\u0000' a '\uffff' e valores numéricos entre 065535.
Tipos numéricos inteiros
byteRepresentam números inteiros de 8 bits (1 byte). Podem assumir valores entre -128 a127.
shortRepresentam números inteiros de 16 bits (2 bytes). Podem assumir valores entre-32.768 até 32.767.
IntRepresentam números inteiros de 32 bits (4 bytes). Podem assumir valores entre-2.147.483.648 até 2.147.483.647.
longRepresentam números inteiros de 64 bits (8 bytes). Podem assumir valores entre-9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
Tipos numéricos reais
floatRepresentam números reais de 32 bits com precisão simples. Podem assumir valores de ponto flutuante com formato definido pela especificação IEEE 754.
doubleRepresentam números reais de 64 bits com precisão dupla. Assim como o float. Podem assumir valores de ponto flutuante com formato definido pela especificação IEEE 754.


Além dos tipos primitivos, existe o tipo String, que funciona como um container de chars, possibilitando a atribuição de uma sequência de caracteres delimitados por aspas duplas (""). Você provavelmente pensará nela como um tipo primitivo, mas uma String é uma classe especial fornecida pela linguagem para prover suporte à 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 código conforme o exemplo abaixo:


public class TiposPrimitivos {
  public static void main(String[] args){
            
     
    // Tipos numéricos 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 numéricos reais
    
    float floatNum = 78.88776f;
    double doubleNum = 922337.559874387184073645;
    
    // tipos lógicos
    
    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 código acima, você verá que, mesmo que se atribua um número qualquer a uma variável do tipo char, ela será tratada pelo método println() como um caractere, não como um número. Também verá que uma letra "F" acompanha o valor atribuído à variável floatNumero e que a letra "L" acompanha o valor atribuído às variáveis longMinimo e longMaximo. Essas letras são sufixos de literais. Elas indicam o tipo do valor que você está passando para a variável.

O que são Arrays em Java?

O que são Arrays em Java?

Arrays são objetos que armazenam diversas variáveis do mesmo tipo. Eles podem conter variáveis de referência primitivas ou de objeto, mas o array propriamente dito sempre será um objeto da pilha, mesmo se for declarado para armazenar elementos primitivos. Em outras palavras, não existe algo como um array primitivo, mas você pode criar um array de elementos primitivos.

Array de 10 elementos 


Cada item em um array é chamado de elemento, e cada elemento é acessado pela posição numérica. Como na ilustração acima as posições são nu*****s a partir do 0. O 9th elemento, por exemplo, é acessado na posição 8.

O programa a seguir cria um array de inteiros, atribui algumas posições a ele, e imprime cada valor à saída padrão.

class ArrayDemo {

public static void main(String[] args) {

int[] meuArray; // declara um array de inteiros

meuArray = new int[10]; // aloca a memória para 10 inteiros

meuArray[0] = 100; // inicializa o primeiro elemento
meuArray[1] = 200; // inicializa o segundo elemento
meuArray[2] = 300; // etc.
meuArray[3] = 400;
meuArray[4] = 500;
meuArray[5] = 600;
meuArray[6] = 700;
meuArray[7] = 800;
meuArray[8] = 900;
meuArray[9] = 1000;

System.out.println("Elemento na posicao 0: " + meuArray[0]);
System.out.println("Elemento na posicao 1: " + meuArray[1]);
System.out.println("Elemento na posicao 2: " + meuArray[2]);
System.out.println("Elemento na posicao 3: " + meuArray[3]);
System.out.println("Elemento na posicao 4: " + meuArray[4]);
System.out.println("Elemento na posicao 5: " + meuArray[5]);
System.out.println("Elemento na posicao 6: " + meuArray[6]);
System.out.println("Elemento na posicao 7: " + meuArray[7]);
System.out.println("Elemento na posicao 8: " + meuArray[8]);
System.out.println("Elemento na posicao 9: " + meuArray[9]);
}
}

A saída desse programa é:

Elemento na posicao 0: 100
Elemento na posicao 1: 200
Elemento na posicao 2: 300
Elemento na posicao 3: 400
Elemento na posicao 4: 500
Elemento na posicao 5: 600
Elemento na posicao 6: 700
Elemento na posicao 7: 800
Elemento na posicao 8: 900
Elemento na posicao 9: 1000


Em uma situação de programação real, você provavelmente utilizaria umas das construções fazendo loopings (laços) para preencher o seu array, pois seria melhor do que escrever cada linha individualmente como mostrado acima. Entretanto, este exemplo ilustra claramente a sintaxe da disposição

segunda-feira, 10 de dezembro de 2012

O que é um Método em java

O que é um Método em Java

Método é uma coleção de declarações que são agrupadas juntas para fazer uma operação. Quando você chama o método System.out.println por exemplo , o sistema na realidade executa varias declarações para poder imprimir na tela o que foi exigido.

Exemplo : 

public class Metodos {

/*
* public é o modificador
* nesse caso int é o tipo de retorno
* soma é o nome do método
* dentro dos parenteses ficam os parametros
* os parametros são o tipo de informação que é pedido pelo método
* */
public int soma (int numero1 , int numero2){
// criamos uma variavel com o nome de resultado

int resultado = numero1 + numero2;

//return é o valor que o método vai retornar
return resultado;
}

public static void main(String [] args){
Metodos metodos = new Metodos();

//aqui chamamos o método e colocamos dois inteiros

metodos.soma(5,5);

// aqui imprimimos na tela o valor que o nosso método retorna
System.out.println(metodos.soma(5, 5));

//o resultado vai ser 10


}

}


sexta-feira, 7 de dezembro de 2012

O que é uma Classe em Java?

O que é uma Classe em Java?

Uma classe  de forma bem simples é um modelo um model de um objeto que você vai criar. Por exemplo vamos dizer que vamos fazer um programa de uma fazenda primeiro criaremos a classe ANIMAIS então a classe ANIMAIS será um modelo para os animais da fazenda. agora criaremos um OBJETO da classe ANIMAIS, daremos o nome de galinha uma galinha é um animal logo será criada a partir do modelo ou classe ANIMAIS.

Exemplo 


public class Animais {

double peso;
String tipoComida;

public void peso (double peso){
this.peso = peso;

}
public void come (String tipoDeComida){
this.tipoComida = tipoDeComida;

}


public static void main(String[] args) {

Animais galinha = new Animais(); // aqui você define o Objeto no nosso caso galinha.

galinha.peso(2); // peso em kilos do animal usando o metodo peso da classe ANIMAIS
galinha.come("milho"); // tipo de comida da galinha que é o nosso objeto usando
// o metodo come da nossa classe ANIMAIS que é o modelo.


 //agora criaremos um outro objeto no nosso caso outro animal

Animais cachorro = new Animais();
cachorro.peso(30); // peso em kilos do animal usando o metodo peso da classe ANIMAIS
cachorro.come("Ração"); // tipo de comida do cachorro que é o nosso objeto usando
// o metodo come da nossa classe ANIMAIS que é o modelo.

}


}

O que é Thread


    Thread são essencialmente sub processos. Informalmente, você pode pensar neles como tarefas que pertencem a um programa e que podem ser executadas "simultaneamente". Dependendo do número de CPUs disponíveis e do número de threads concorrentes, algumas destas threads, na verdade, serão executados em paralelo em CPUs diferentes, ao passo que em outros casos, a ilusão de uma execução simultânea será conseguida por "malabarismo" de  threads para dentro e para fora das CPUs disponíveis. Uma parte do sistema operacional chamado de agendador de threads decide quais threads alocar , o tempo de CPU e quando.

    Exemplo: Digamos que você queira verificar se o usuário digitou um número 10 a cada 60 segundos  então você chama um loop while para fazer a verificação da condição mas você perceberá que a sua aplicação ficará em um loop não permitindo o usuário digitar nada, é onde entra as Threads como multitarefas você cria uma Thread com o loop while e sua aplicação fica livre para permitir que o usuário interaja pois a thread   funciona como se outra aplicação separada da sua fizesse outro comando enquanto a sua aplicação fica livre para outras tarefas.