Post on 27-Jun-2015
Curso de Java
by Antonio Rodrigues Carvalho Neto
Introdução ao Java
O que é o Java ?
� O JAVA é uma linguagem de programação que foi desenvolvida para utilizar as vantagens da orientação a objetos.
� Criada por James Gosling, o JAVA inicialmente foi feito para rodar em equipamentos eletrônicos.
� Antes deste nome, a linguagem se chamava OAK, porém o significado do nome JAVA ainda é um mistério
� Tornou-se conhecida em 1996 quando foi lançada juntamente com o navegador Netscape
Porque Java ?
� PortabilidadeO JAVA foi planejado para executar aplicações da internet, utilizando
sistemas heterogêneos. Portanto um programa em JAVA pode ser executado em qualquer sistema operacional, mantendo a mesma aparência e o mesmo comportamento.
� Compatibilidade Mesmo trazendo novas funcionalidades melhoradas, os compiladores
JAVA mais recentes possuem ainda compatibilidade com códigos desenvolvidos para as versões mais primitivas do JAVA.
� ReusoAtravés da orientação a objetos e do uso de Java Beans, uma classe feita
em Java pode ser utilizada em outros sistemas sem a necessidade de recodificação.
Uma breve história...
Como funciona os programas feitos em JAVA ?
public class Test {int a;String b;public static void... {}
}
public class Test {int a;String b;public static void... {}
}
10101001010100001011010010101100101001010001010010100101001010010010010100100101000100101001001001
10101001010100001011010010101100101001010001010010100101001010010010010100100101000100101001001001
Código Fonte
<nome arquivo>.java
Byte Code
<nome arquivo>.class
Aplicativo java em execução
javac java
Tipos de JAVA
J2ME J2SE J2EEJava 2 Micro Edition
Usado para criar aplicações java para dispositívos
portáteis (Celulares, PDAs, cameras, etc ...)
Java 2 Standard Edition
Permite criar aplicações Java, para computadores pessoais
Java 2 Enterprise Edition
Permite a criação de aplicações corporativas
Estrutura de um arquivo JAVA
Arquivo fonte JAVA
Classe
Método 1
Método 2
// Declaração de pacotepackage fatec.edu;
// Declaração de importaçãoimport java.Math.*;
// Declaração da classepublic class Circulo {
private raio;public float perimetro() {
float resultado;resultado = 2 * Math.pi * raio;return (resultado);
}
public float area() {return (Math.pi * Math.power(raio, 2));
}}
Anatomia de um arquivo JAVA
Nome da ClasseTodos podem acessar
Tipo de retornodo método
Nome do método
Anatomia (continuação)
// Declaração da classepublic class Helloworld {
// Declaração de métodopublic static void main( String args[]) {
System.out.println( “Ola ... “);}
}
Nome da Classe
Todos podem acessar Tipo de retorno
do método
Nome do método
Argumentos/Parâmetrosdo método
Sintaxe do Java� Cada instrução deve terminar com ;� // Significa comentário de linha única
� /* e */ delimitam um bloco de comentários
� O bloco de códigos inicia-se com { e termina com }� A declaração de variáveis é feita da seguinte forma :
� <tipo da variável> <nome da variável>;
Exemplos de comentáriospublic class Principal {
// exemplo de comentário de apenas 1 linha
// observe que o nome da classe esta com a primeira letra em maiúscula
int i; // este tipo de comentário é comum no final das linhas
/* exemplo de comentário feito em mais de uma linha neste caso quantas linhas forem necessárias o java ignora todas as linhas até encontrar o conjunto que fecha este bloco */
public static void main (String[] args) {
System.out.println (“Ola...”); // escreve Ola... na tela }
}
Identificadores do Java
staticshortreturnpublicprotectedprivate
enumassert
whilevolatilevoidtrytransientthrows
throwthissynchronized
switchsuperstrictfp
packagenewnativelonginterfaceint
instanceofimportimplementsifgotofor
floatfinallyfinalextendselsedouble
dodefaultcontinueconstclasschar
catchcasebytebreakbooleanabstract
Comandos básicos do Java
� Para exibir algo na tela utilize o comando abaixo : System.out.println( “Texto a ser exibido”);
� Para receber um número do usuário, utilize a sequência de comandos abaixo :Scanner input = new Scanner (System.in);int numero = input.nextInt();
Meu primeiro programa
� Pelo fato de ser totalmente Orientada a Objetos todos os programas em JAVA devem ser criados dentro de classes.
� Porém os códigos de programação não podem ser adicionados em qualquer lugar, eles precisam ficar dentro de um método.
Meu primeiro programa� Para criar um programa que liste os números de 1 a
10 é preciso seguir as etapas abaixo : � Crie um arquivo texto com o nome do programa e a
extensão .java� Coloque uma declaração de classe. Nota o nome da
classe publica deve ser identica ao nome do arquivo.� Crie um método main dentro da classe de forma que a
JVM possa executar esta classe diretamente.� Coloque o código a ser executado dentro da função main
Meu primeiro programa� Antes de criar o arquivo vamos criar um diretório
para abrigar o nosso programa� Abra o prompt de comandos do Windows� Va para o diretório raiz digitando CD \� Crie um diretório chamado curso com o comando MD
curso� Entre no diretório curso digitando o comando CD
curso
Meu primeiro programa
� Criando o arquivo java : �Abra o notepad e crie um arquivo texto com o
nome do programa e a extensão .java� Inicie o arquivo escrevendo a declaração da
classe.
�Nota O nome da classe deve ser igual ao nome do arquivo texto que você criou, removendo apenas a extensão.
Meu primeiro programa
� Criando o arquivo java (continuação) : �Como exemplo vamos criar um programa
chamado MeuPrograma que vai listar os números de 1 a 10 na tela de comandos.
�Apartir da tela do prompt comandos digite notepad MeuPrograma.java
�Clique em Yes para criar o arquivo
Meu primeiro programa
� Coloque a declaração da classe conforme abaixo:public class MeuPrograma {
}
Meu primeiro programa
� Crie o método principal, onde você colocará o código.
public class MeuPrograma {
public static void main (String args[]) {
}
}
Meu primeiro programa
� Dentro do método principal digite o código para imprimir mensagem os números na tela.
public class MeuPrograma { public static void main (String args[]) {
for (int i = 1; i <= 10; i++) { System.out.println( i ) ;
}
}}
Meu primeiro programa
� Seu arquivo MeuPrograma.java ficará assim :
Meu primeiro programa
� Salve o arquivo do notepad.� Volte para o prompt de comandos� Siga as etapas abaixo para compilar e executar
o programa :� Para compilar digite javac MeuPrograma.java� Para executar digite java MeuPrograma
� Nota estamos assumindo que o diretório do JAVA já encontra-se registrado na variável de ambiente PATH.
Meu primeiro programa� Caso não funcione na hora de executar, tente usar o comando
java –classpath . MeuPrograma
este comando informa o executor do JAVA para buscar a classe no diretório corrente.
Operadores do Java
int a = 5;
b += 10; //15;b *= 3; //45;
Atribuição com operação+=, -=, *=., /=
int a = 5; int c = a << 2; //20;
Deslocamento de bits a esquerda ou a direita<<, >>
int a = 4; int b = 0; String msg = “”;
if (a == b || a > 5) { msg = “1º if de verdadeiro” } if (a != b && !(b > 10)) {msg = msg + “ 2º if de verdadeiro” }
System.out.println(msg);
Não lógico, E lógico, OU lógico!, &&, ||
int a = 4; int b = 0; String msg = “”;
if (a == b) { msg = “são iguais” }
if (a != b) {msg = “são diferentes” }System.out.println(“ Os valores de a e b “ + msg);
Igual e diferente==, !=
int a = 4; int b = 0;
if (a > b) { b = a } else { if (a < b) { a = b } }
System.out.println(“Valor de a:“ + a + “ valor b:” + b);
Maior, maior igual, menor, menor igual>, >=, <, <=
int a = 5; // 5 int a = 10; // 10
a++; // 6 a--; // 9
int b = 2 + a++; // 8 int b = 2 + ++a; // 9
Incremento e decremento++, --
int a = 10; // 10
int b = a % 3; // 1Resto%
int a = 0; // 0
int b = a + 10 / 2; // 5
int c = b – 5 * 3; // 0
Adição, subtração, multiplicação e divisão+, -, *, /
ExemploDescriçãoOperador
Desvios Condicionais
for (int i = 2; i < 50; i++) { System.out.println(“ i = “ + i);
}
for (<inicio>; <condição>; <incremento>) { // Este trecho é executado
enquando a condição é verdadeira}Usado para loops em que sabemos a quantidade de voltas que vão ocorrer
for
int i = 1;while (i < 100) {
System.out.println(“ i = “ + i);i++;
}
while (<condição>) {// Este trecho é executado
enquando a condição é verdadeira} Usado para loops não contáveis
while
int a = 4; String msg = “”; if (a == 10) {
System.out.println(“ a é igual a 10”);} else {
System.out.println(“ a é diferente de 10”);}
if ( <condição> ) { // Executado caso a condição
seja verdadeira} else {
// Executado caso a condição seja falsa
}
if
ExemploSintaxeNome do Desvio
Exercício
� Fazer um programa que imprima um retângulo conforme abaixo :
****************************************
� Utilize o loop for na sua programação� Desafio : Modifique o programa anterior para que seja
solicitado ao usuário para informar o comprimento e a altura do retângulo. Depois o retângulo deverá ser impresso com o comprimento e a altura especificados.
(comprimento 10 X altura 4)
Pegando informações pelo teclado
� Para solicitar alguma informação do usuário, precisamos esperar que ele digite esta informação e depois é preciso armazenar esta informação em algum lugar da memória para que possa ser utilizada futuramente.
� A classe Scanner faz este tipo de trabalho, para utilizá-la basta criar um objeto do tipo Scanner conforme a síntaxe abaixo:� Scanner <obj Scanner> = new Scanner (System.in);
� Uma vez criado você pode usar este objeto quantas vezes quiser.� Para utilizá-lo você deve acionar um dos seus métodos conforme o
tipo de informação que você deseja obter do usuário.� int <variável> = <obj Scanner>.nextInt();� String <variável> = <obj Scanner>.nextLine();� float <variável> = <obj Scanner>.nextFloat();
Exercício
� Faça um programa que solicite um número para o usuário e imprima a tabuada correspondente daquele numero (conforme abaixo):
7 X 1 = 77 X 2 = 147 X 3 = 217 X 4 = 287 X 5 = 357 X 6 = 427 X 7 = 497 X 8 = 567 X 9 = 637 X 10 = 70
� Utilize o loop for na sua programação� Desafio : Modifique o programa anterior para que seja solicitado ao
usuário qual o número multiplicador máximo da tabuada.
Tabuada do 7
Tipos de Variáveis e Wrappers
Charactere(apenas um)
Número decimal
Número decimal
Número inteiro
Número inteiro
Número inteiro
Número inteiro
Valor lógico true ou false
Tipo da informação
Character16 bitschar
Double64 bitsdouble
Float32 bitsfloat
Long64 bitslong
Integer32 bitsint
Short16 bitsshort
Byte8 bitsbyte
Boolean1 bitboolean
Wrapper ClassTamanho na memória
Variávelprimitiva
Wrappers� As classes Wrappers possuem métodos que facilitam a
manipulação das variáveis primitivas.� Exemplos :
String a = “123”;int num = Integer.parseInt( a );// Converte a string “123” para um numero inteiro
boolean b;b = Boolean.parseBoolean(“true”);// b = true
Converte uma String para a um valor booleano
boolean b = Boolean.parseBoolean (String s);
boolean b;b = Character.isLetter(‘a’); //true
Retorna true caso o caractere seja uma letra
boolean b = Character.isLetter (char c);
String s;s = Integer.toHexString(243);// s = “f3”
Converte um inteiro n em uma String contendo o valor em hexadecimal
String s = Integer.toHexString ( int n);
int n = Integer.parseInt(“10”);// n = 10
Converte uma String s em um número inteiro
int n = Integer.parseInt ( String s);
ExemploDescriçãoMétodo
Exercício
� Faça um programa que solicite um número inteiro e converta-o em número Hexadecimal.
� Desafio: Converta o número para binário e exiba-o também.
Bibliografia
� Livro “Use a cabeça JAVA”� Autor : Katty Sierra e Bert Bates� Editora : Alta Books
� Livro “JAVA – Como Programar 6ª edição”� Autor : Deitel, Deitel� Editora : Pearson Education
� Apostila “Caelum Java e Orientação a Objetos”� Autor : Caelum� Download através do site http://www.caelum.com.br
� Curso na WEB “JEDI”� Autor : DFJUG – Distrito Federal Java User Group� Acesso através do site http://jedi.wvhosting.com.br/login/signup.php