Intro Java
Intro Java
www.code.org
Bibliografia:
----------------
Santos, Ciro M. Desenvolvimento de Aplicações Comerciais com Java e
NetBeans – Editora Ciência Moderna – 2010.
DEITEL, H. M., Deitel, P.J., Java Como Programar. 4 Ed. Bookman 2005
HORSTMANN, Cay S., CORNELL., Core Java 2 – Volume I – Fundamentos
– Makron Books – 2003.
HORSTMANN, Cay S., CORNELL., Core Java 2 – Volume I – Recursos
Avançados – Makron Books – 2003.SUN MICROSYSTEMS, Serviços
Educacionais SUN – 2002
Curos de Java - http://www.sdsi.uri.br/geoob/
2
C
C++ JAVA
http://www.netbeans.org
4
DESENVOLVIMENTO DE APLICAÇÕES
COMERCIAIS COM JAVA E NETBEANS
A TECNOLOGIA JAVA
5
Tecnologia Java
Um ambiente de desenvolvimento
Um ambiente de aplicações
Um ambiente de distribuição
JVM, J2SDK, J2EE, J2ME
Classe
Características são
RunTime
Compilar
Carregador
java de classes
Carga a
Verificador de
TestHelloWorld.java partir do disco
bytecodes
rígido, da rede
ou de outra
fonte
javac Interpretador
TestHelloWorld.classe Runtime
Hardware
12
Roteiro de
Programação
Editor ASCII
Compilação JIT
Arquivo
Execução
.java
Interpretação
Carregament
Compilador o
Java Verificação
(javac)
Arquivo
.class JVM - Máquina Virtual Java
(java) 13
Componentes de uma App
/ Applets Java
arquivo.java :
código fonte de uma aplicação ou
applet
arquivo.class :
bytecode gerado da compilação de uma
arquivo .java (existirá um .class para
cada
classe especificada no .java)
© Prof.Hugo
Sampaio - 14
Comentários
/* comentário
de múltiplas linhas */
15
Itens Fundamentais
Declaração de variáveis: As variáveis só podem
armazenar valores de um mesmo tipo
Tipos de variáveis: númericos, literais, ponto
flutuante
int, float, double, char, void,
declare:
nome-do-tipo lista-de-id ;
onde:
• nome-do-tipo é uma das palavras chave dos
tipos de variáreis
• lista-de-id são os nomes escolhidos para as
variáveis:
int max, min, change, _sys_var1;
char nome, endereco;
16
Palavras Reservadas
abstrac implement
do private throw
t s
boolea protecte
double import byte
n d
transie
break else instanceof public
nt
extend
int return true case
s
interfac
false short try catch
e
final long static void char
finally native super volatile class
continu
float new switch while
e
synchroniz
for null default if
ed
17
Operadores Aritméticos
Operador Ação
+ Soma (inteiro e ponto flutuante – IPF)
- Subtração ou troca de sinal – IPF
* Multiplicação – IPF
/ Divisão – IPF
% Resto de divisão (inteiro)
- Sinal Negativo (-unário)
++ Incremento – IPF
-- Decremento – IPF
18
Operadores Relacionais e Atribuição
Operador Ação
> Maior do que
>= Maior ou igual a
< Menor do que
<= Menor ou igual a
== Igual a
!= Diferente de
+= a+=10 a = a + 10
*= a*=10 a = a * 10
-= a-=10 a = a – 10
/= a/=10 a = a / 10
%= a%=10 a = a % 10
19
Line Number
20
Ferramentas
21
Área de trabalho
Área de
Desenvolvimento
Projeto Navegador
Saida
22
Projeto
23
Projeto
24
Exemplo de uma
aplicação
vasco.java
public class Aula
{
Editar: public static void main (String[] args)
{
System.out.println(“Ola Mundo java !!!”);
}
}
compilar:
Javac Aula.java
executar:
Java Aula
© Prof.Hugo
Sampaio - 25
Trabalhando com Java
Arquivo: Exemplo1.java
public class Exemplo1 {
String s = JOptionPane.showInputDialog("Digite um
num");
int y = Integer.parseInt(s);
System.out.println(”Alo Pessoal!“+y);
}
26
Projeto
Objeto
JOptionPane
Import
import javax.swing.JOptionPane
Propriedade
JoptionPane.showInputDialog(“Mensagem”)
JoptionPane.showMessageDialog(null,“Msg1”,”Msg2”,I
cone)
null ( componente pai, utilizado para especificar a posição de criação da
janela)
DEFAULT_OPTION Botão OK
31
Saída de dados
Objeto : System.out
System.out.println(“MSG”);
System.out.println(valor);
© Prof.Hugo
Sampaio - 32
Exemplo de saída
import javax.swing.*;
class MinhaClasse
{
public static void main (String
arg[])
{
String nome = new String();
nome = "Hugo Sampaio";
System.out.println("Ola!, " +
nome);
}
}
© Prof.Hugo
Sampaio - 33
Saída de dados
Saída em uma janela dialogo de mensagem :
Objeto : JOptionPane.showMessageDialog()
JOptionPane.showMessageDialog(
null,
“MSG”
“TITULO”
<ICONE>
);
© Prof.Hugo
Sampaio - 34
Exemplo de saída
import javax.swing.*;
class MinhaClasse
{
public static void main (String arg[])
{
String nome = new String();
nome = "Hugo Sampaio";
JOptionPane.showMessageDialog(
null,
"Ola! " + nome,
"Minhas mensagens",
JOptionPane.INFORMATION_MESSAGE
}
}
© Prof.Hugo
Sampaio - 35
JOptionPane.INFORMATION_MESSAGE JOptionPane.ERROR_MESSAGE
JOptionPane.INCANCEL_OPTION
© Prof.Hugo
Sampaio - 36
Aplicação Java
intro1.java
}
}
37
Operadores Lógicos
Operador Ação
&& AND (E)
|| OR (OU)
! NOT (NÂO)
A B A && B A || B
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1
38
CONTROLES DE FLUXO
if ( condição ) { int a,x;
sequencias de instruções ; switch (x) {
}else{ case 1 : a=1;
sequncias de instruções; break;
} case 2 : a=2;
break;
res = (condicao)? s1 : s2 ; case 3 : a=3;
break;
for(inicialização; condição; inc/dec) { default : a=10;
sequencia de instruções ; }
}
int vet1[] = {10,20,30,40,50}; inicialização;
int vet2[] = new int[5]; while (condição) {
for (int i=0; i < 5; i++) { sequencia de instruções ;
vet2[i] = vet1[i]; inc/dec;
System.out.println(vet2[i]);
}
}
Estrutura Condicional
if falso
if ( condição ) { fimse
a condição b
sequencias de instruções ;
} verdadeiro
sequenci if sequenci
F V
a a condição b a
de de
instruçõe instruçõe
s s
fimse
if ( condição ) {
sequencias de Ternário:
instruções ;
res = (condicao)? s1 : s2 ;
}else{
sequncias de
instruções; 41
Aplicação Java
intro2.java
}
}
42
Aplicação Java
intro3.java
// ternário
m = (a > b )? a : b;
System.out.println("Maior valor = "+m);
}
}
43
Estrutura Condicional
int a,x;
switch (exp_ordinal) { switch (x) {
case ord : instrução; case 1 : a=1;
break; break;
case ord : instrução; case 2 : a=2;
break; break;
case ord : instrução; case 3 : a=3;
break; break;
default : instrução; default : a=10;
} }
44
Aplicação Java
public class intro4 { intro4.java
public static void main(String[] args){
int a = 4;
switch(a){
case 1: System.out.println("Domingo"); break;
case 2: System.out.println("Segunda"); break;
case 3: System.out.println("Terca"); break;
case 4: System.out.println("Quarta"); break;
case 5: System.out.println("Quinta"); break;
case 6: System.out.println("Sexta"); break;
case 7: System.out.println("Sabado"); break;
default: System.out.println("NDA");
}
System.out.println("Valor = "+a);
}
}
45
Estrutura de Repetição
inicialização
inc/dec
if V sequenci
a condição a
b de
instruçõe
F s
fimse
46
Estrutura de Repetição
inicialização; inicialização;
while (condição) { do{
sequencia de instruções ; sequencia de
inc/dec; instruções ;
} inc/dec;
}while (condição);
47
Aplicação Java
public class intro5 { intro5.java
public static void main(String[] args){
if (i == 10){ break; }
System.out.println(i-1);
}while(i<20);
}
}
public class testLaco {
public static void main(String[] args){
Laco l = new Laco(); 51
Aplicação Java
public class intro8 { intro8.java
public static void main(String[] args){
String v1 = "10";
String v2 = "5";
int x = Integer.parseInt(v1);
int y = Integer.parseInt(v2);
53
Aplicação Java
A palavra chave static é utilizada como modificador de
variáveis, métodos e classes.
hello.greet();
Esta linha demonstra uma chamada de método do objeto.
54
Aplicação Java
Eco.java
01 // Classe Eco
02 public class Eco {
03 public static void main (String[] args ) {
04 for (int i=0; i < args.length; i++)
05 System.out.print(args[i] + “ ”);
06 System.out.println();
07 }
08 }
55
Declaração de Array
// *** testArray.java
class Array {
private char[] ch1, ch2, ch3;
public void loadArray() {
ch1 = new char[10];
for(int i=0; i<10;i++){
ch1[i]= (char) ('A'+i); } }
public char[] copyArray(){
ch2 = new char[10];
for(int i=0; i<10;i++){
ch2[i]= ch1[i];
}
return ch2;
}
58
Aplicação Java
public void showArray(){
ch3 = new char[10];
ch3 = this.copyArray();
for(int i=0; i<10;i++){
System.out.println("Valor i = "+ch3[i]);
}
}
} // fim da class Array
public class testArray {
public static void main(String[] args){
Array arr = new Array();
arr.loadArray();
arr.showArray();
}
}
59
Vetores (Arrays
Unidimensionais)
Definição do array:
int[ ] posiçãoDeMemória = new int[1024];
Cópia ou compartilhamento?
double[ ] medidasDeTemperatura;
medidasDeTemperatura = new double[24*60*60];
double[ ] duplicata = medidasDeTemperatura;
Vetores (Arrays
Unidimensionais)
Exercício:
ta
medidasDeTempera duplica
tura ta
Vetores (Arrays
Unidimensionais)
Definição do array:
É possível definir o tamanho do array a partir do valor de uma
variável:
int quantidadeNecessária = 32768;
byte[ ] vetorNumérico = new byte[quantidadeNecessária];
O construtor da classe
TesteArray v = new TesteArray(i);
que encapsula o array
recebe o valor lido e
declara o array.
Vetores (Arrays
Unidimensionais)
Exercício:
10 20 30
num 0 1 2
POO - CLASSE
•Modificadores
private, public,
protected.
•Atributos
•Métodos
•Construtores
•Herança
72
Diálogo
Diálogo
public class Analise extends
public class Math { Math {
public int fat(int n)
{ public float arranjo(int n, int
if (n ==1){ r){
return 1; int vn, vnr;
}else{ vn = fat(n);
return (n * vnr = fat(n-r);
fat(n - 1)); return(vn/vnr);
} }
} }
} public static void main(String[] args) {
int x =
Integer.parseInt(JOptionPane.showInputDialog("Enter"));
int y =
Integer.parseInt(JOptionPane.showInputDialog("Enter"));
Analise ana = new Analise();
float ar = ana.arranjo(x, y);
System.out.println(ar); 74
Projeto
75
Projeto
76
Projeto
77
Semaforo pt = new
Exemplo Semaforo();
pt.ligar();
pt.aumenta();
int x = pt.obtemStatus();
System.out.println(x);
// métodos
public void ligar ( ) { status = sLIG;
}
public void desligar ( ) { status =
sDESL; }
public void aumenta ( ) { status +=
} sSOB; }
78
public void abaixa ( ) { status -= sDES;
Aplicação Java
Greeting.java
01 // Greeting class declaration
02 public class Greeting {
03 public void greet() {
04 System.out.println("Hi Greeting ...");
05 }
06 }
TestGreeting.java
01 // Test Greeting Aplication
02 public class TestGreeting {
03 public static void main (String[] args ) {
04 Greeting hello = new Greeting();
05 hello.greet();
06 }
07 }
79
Construtores
Quando usamos a palavra new, estamos
construindo um objeto. Quando o comando new
é chamado, executa o construtor da classe.
O construtor da classe é um bloco declarado com o
mesmo nome que a classe.
// * Arquivo Classe1.java
public class Classe1 {
Ctrl Espaço
public Classe1() {
}
}
// * Arquivo Classe2.java
public class Classe2 {
public Classe2() {
System.out.println(“Ola Mundo”);
}
}
81
Aplicação Java
Dog.java
82
Aplicação Java
testDog.java
// Arquivo testDog.java
public class testDog {
public static void main(String[] args){
Dog d = new Dog();
System.out.println("Dog Weight ="+d.getWeight());
d.setWeight(52);
System.out.println("Dog Weight ="+d.getWeight());
}
}
83
UML/Livro