profa.me denise introdução a programação com java java … · 2019-02-18 · linguagem de...
TRANSCRIPT
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 1 -
Introdução a programação com JAVA Java Standard Edition(JavaSE)
Capítulo 01
O que é o Java ?
• Linguagem de programação (regras sintáticas)
• Plataforma de desenvolvimento e execução
• Bibliotecas (API)
• Ambientes de execução
O Java é uma linguagem orientada a objetos que tem portabilidade e segurança, portanto
é uma linguagem mais robusta comparada a outras linguagens , como PHP.
Histórico
• Problemas resolvidos e motivo de seu sucesso:
Ponteiros / gerenciamento de memória
• Portabilidade falha: reescrever parte do código ao mudar de SO
Utilização em dispositivos diversos
✓ Criada pela Sun Microsystems no meio da década de 1990
✓ Adquirida pela Oracle Corporation em 2010
Domina o mercado corporativo desde o fim do século 20
Linguagem utilizada no padrão Android (device movel) por muitos anos
Edições
• Java ME -Java Micro Edition-dispositivos embarcados e móveis -IoT
http://www.oracle.com/technetwork/java/javame
• Java SE -Java Standard Edition-core -desktop e servidores
http://www.oracle.com/technetwork/java/javase
https://en.wikipedia.org/wiki/Java_version_history
• JavaFX-desktop e RIA
https://pt.wikipedia.org/wiki/JavaFX
• Java EE -Java Enterprise Edition-aplicações corporativas
http://www.oracle.com/technetwork/java/javaee
https://en.wikipedia.org/wiki/Java_EE_version_history
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 2 -
Compilação e interpretação
• Linguagens compiladas: C, C++
• Linguagens interpretadas: PHP, JavaScript
• Linguagens pré-compiladas + máquina virtual: Java, C#
Fonte : Nelio Alves
Fonte : Nelio Alves
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 3 -
Estrutura de uma aplicação Java
Uma aplicação é composta por classes
package= agrupamento LÓGICO de classes relacionadas
Fonte : Nelio Alves
Aplicação = Agrupamento de módulo relacionados
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 4 -
Plataforma Java SE
• Bibliotecas -API specification
https://docs.oracle.com/javase/8/docs/api/
https://docs.oracle.com/javase/10/docs/api/
• JVM -Java Virtual Machine • Máquina virtual do Java -necessário para executar
sistemas Java • http://www.oracle.com/technetwork/java/javase/downloads
LST – Long Term Support.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 5 -
• JRE -Java RuntimeEnvironment
Necessário para usuários finais executarem aplicações Java no computador • Server
JRE
Necessário para executar sistemas Java em servidores
• JDK -Java DevelopmentKit
Necessário para desenvolvedores Java.
Contém o JRE, mais ferramentas para desenvolvimento, depuração e monitoramento de
projetos Java.
• Certifique-se de que seu Windows esteja devidamente licenciado e atualizado •
Windows update
• Baixar e instalar o Java JDK
http://www.oracle.com/technetwork/java/javase/downloads
• Configurar variáveis de ambiente do sistema
Painel de Controle -> Variáveis de Ambiente • Variável JAVA_HOME: C:\Program
Files\Java\jdk-10.0.1
Variável Path: incluirC:\Program Files\Java\jdk-10.0.1\bin
Testar no terminal de comando: java—version
Ambiente Java Típico
Para instalar o Java em seu computador, você precisa ter o kit de instalação JDK e siga
os passos para instalação.
Fase 1 : O programador edita o programa em um editor de sua preferência.
Fase 2 : O programador compila o programa dando a instrução JAVAC. O compilador
gera um arquivo com extensão : .class. Exemplo : javac primeiro_ex.java
Os arquivos do Java são compilados e são convertidos de arquivos texto para um
formato que contém blocos independentes de bytes codes (Código Intermediário).
Fase 3 : Carga. O programa deve ser colocado em memória antes de poder ser
executado.Isso é feito pelo carregador de classe.
Os aplicativos são carregados na memória e executados com o interpretador Java
através do comando JAVA. Exemplo : java primeiro_ex.
Fase 4 : Em tempo de execução estes bytes codes são carregados, são verificados
através do Byte Code Verifier (uma espécie de segurança).
Fase 5 : O computador interpreta o programa, realizando a ação especificada pelo
programa.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 6 -
Primeiro programa Java
Abra o Notepad e crie o seguinte programa:
class primeiro
{
public static void main (String arg [])
{
System.out.println("Meu Primeiro Programa");
}
Salve-o como primeiro.java
Após terminar o programa compile-o e execute-o:
Para Compilar : javac primeiro.java
Para Executar : java primeiro
Anotações :
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
___________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 7 -
Capítulo 02
Comentários
Estes são os três tipos permitidos de coméntarios nos programas feitos em Java:
// comentário de uma linha
/* comentário de uma ou mais linhas */
/** comentário de documentação */ (Arquivos de documentação)
Ponto e vírgula, Blocos e o espaço em branco
* No java, os comandos são terminados com o sinal de ponto e vírgula (;)
* Um bloco tem iníco e tem o seu fim representados pelo uso das chaves {};
* O uso do espaço em branco permite uma melhor visualização dos comandos e em
consequencia facilita a sua manutenção.
Identificadores
Na linguagem Java um identificador é startado com uma letra, undersco ( _ ), ou
sinal de dólar ($), e existe uma diferenciação entre letras maiúsculas e minúsculas:
Identificadores válidos:
* identifier
* userName
* User_name
* _sys_var1
*$change
Tipos Básicos no Java
No Java existem oitos tipos básicos e um tipo especial.
Tipo Lógico
- boolean: on e off; true e false ou yes e no.
Tipo Textual
- char e String
Um caracter simples usa a representação do tipo char. O tipo char representa na
forma Unicode um caracter de 16-bit.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 8 -
O literal do tipo char pode ser representado com o uso do (‘ ‘).
‘\n’ – nova linha
‘\r’ – enter
‘\t’ – tabulação
‘\\’ - \
‘\” ”’ - “”
O tipo String, como não é primitivo, é usado para representar uma
seqüência de caracteres.
Palavras Reservadas
abstract do implements private
throw
boolean double import protected
throws
breaak else instanceof public
transient
byte extends int return
true
case false interface short
try
catch final long static
void
char finally native super
volatile
class float new switch
while
continue for null synchronized
default if package this
Tipo Integral – byte, short, int e long
Existem quatro tipos de integral:
Tamanho da Integral Nome ou Tipo Espaço
8 bits byte
-27 . . . . 27 - 1
16 bits short
-215 . . . . 215 - 1
32 bits int
-231 . . . . 231 - 1
64 bits long
-263 . . . . 263 - 1
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 9 -
Tipo Ponto Flutuante
Uma variável do tipo ponto flutante pode ser declarada usando a palavar
float ou double.
3.14 Um ponto flutuante simples;
6.02E23 Um valor de ponto flutuante largo;
2.718F Um valor de ponto flutuante simples;
123.4E+306D Um valor de ponto flutuante usando o tipo double.
Convenção de Código no Java
Class - Nomes de classes podem ser maiúsculas ou minúsculas ou misturado
(maiúsculas e minúsculas), mas por convenção o nome das classes começam por
letra maiúscalas.;
Interfaces - Nomes de Interfaces suportam nomes iguais aos das classes;
Métodos - Nomes de métodos podem ser verbos, podendo misturar entre
maiúsculas e minúsculas, sendo entretando a primeira letra maiúscula;
Constantes - Nomes de constantes podem ser maiúsculas, minúsculas,
misturadas, separadas com underscores.
Variáveis - Todas as instancias, classes e variáveis globais suportam maiúsculas
e minúsculas.
Controles de Estruturas- Convencionou-se o uso de { } (chaves);
Espaços - Convencionou-se o uso de quatro espaços para identações;
Comentários - Use os comentários para explicar os segmentos de código que não
são obvios.
Saída padrão em JAVA
System.out é conhecido como objeto de saída padrão.
Método : System.out.println
Exibe uma linha de texto na janela de comando.
A linha inteira : System.out.println, seu argumento entre parênteses(o string) e o
ponto e virgula (;), é uma instrução.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 10 -
Exemplo :
import java.io.*;
class exemplo0{
public static void main(String args[]){
System.out.println("Alo Turma de ADS e SI");
}
}
Exemplo :
boolean completed = false;
char gender = 'F';
char letter = '\u0041';
byte n1 = 126;
int n2 = 1000;
int n3 = 2147483647;
long n4 = 2147483648L;
float n5 = 4.5f;
double n6 = 4.5;
String name = "Maria Green";
Object obj1 = "Alex Brown";
Object obj2 = 4.5f;
System.out.println(completed); System.out.println(gender); System.out.println(letter);
System.out.println(n1); System.out.println(n2); System.out.println(n3);
System.out.println(n4); System.out.println(n5); System.out.println(n6);
System.out.println(name); System.out.println(obj1); System.out.println(obj2);
Exercícios: Definir as saídas.
Exercício 01
class Prog0201
{
public static void main (String arg [])
{ int a = 5, b = 10;
a = a + 5;
// b = b*2;
System.out.println(“Valor da variavel a: “ + a);
System.out.println(“ Valor da variavel b: ” + b);
}
}
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 11 -
Exercício 02
class Prog0202
{
public static void main (String arg [])
{ int a = 5, b = 10;
a = a + 5;
b = b*2;
System.out.println(“Valor da variavel a: “ + a);
System.out.println(“ Valor da variavel b: ” + b);
}
}
Entrada de dados padrão
Objeto Scanner
public class Program {
public static void main(String[] args) {
Locale.setDefault(Locale.US);
Scanner sc = new Scanner(System.in);
double a, b, c, delta;
System.out.println("Digite os valores dos coeficientes:");
a = sc.nextDouble();
b = sc.nextDouble();
c = sc.nextDouble();
delta = b * b - 4 * a * c; // cálculo do valor de delta
}}
Uma das formas de se ler dados em Java é por meio de um objeto do tipo Scanner, o
qual deve ser instanciado com o argumento System.in:
Scanner sc = new Scanner(System.in);
Objeto BufferedReader.
Exemplo:
import java.io.*;
import java.lang.*;
class fmatematica{
public static void main(String args[]){
BufferedReader entrada;
entrada = new BufferedReader(new InputStreamReader(System.in));
int n1,n2;
try{
System.out.println("Qual o numero");
n1=Integer.parseInt(entrada.readLine());
n2 = Math.abs(n1);
System.out.println("Absoluto :" + n2);
System.out.println("Potencia :" + Math.pow(n2,2));
}
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 12 -
Capítulo 03
Variáveis e Tempo de vida
Você tem dois meios para descrever variáveis: usando o tipo simples de ligação
int e float ou usando tipos de classes definidas pelo programa. Você pode declarar
variáveis de duas formas, uma dentro de um método e a outra dentro da classe a qual
este método está incluído.
Inicialização de variáveis
No Java não é permitido o uso de variáveis indefinidas.
Variáveis definidas dentro do método são chamadas de variáveis automáticas,
locais, temporárias ou estáticas e devem ser inicializadas antes do uso.
Quando um objeto é criado, as variáveis membro são inicializadas com os
seguintes valores em tempo de alocação:
Tipo de variável Valor inicial Tamanho
Byte 0 8 bits
short 0 16 bits
int 0 32 bits
long 0L 64 bits
float 0.0f 32 bits
double 0.0d 64 bits
char ‘\u0000’ (Null) 64 bits
boolean false
Fonte : Nelio Alves
Operadores
No Java os operadores são muito similares ao estilo e funcionalidade de outras
linguagens como por exemplo o C e o C++.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 13 -
Fonte : Nelio Alves
Fonte : Nelio Alves
Pré-incremento:
x = 10;
x = x + 1;
O valor da variável x é 11
ou
x = 10;
++x
O valor da variável x é 11.
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 14 -
Pós-Incremento:
x = 10;
x = x + 1;
O valor da variável x é 11
ou
x = 10;
x++
O valor da variável x é 11.
Diferença entre o Pré-Incremento e o Pós-Incremento:
x = 10
++x => neste exato momento a variável a vale 11
x =10
x++ => neste exato momento a variável x vale 10
Exercícios :
a)
n=5
x = n++;
Qual o valor de x e de n _______________
b)
n=5
x=++n
Qual o valor de x e de n ________________
c)
n=1
k = 3*n++
Qual o valor de n e de k _________________
d)
n=1
k=3 * ++n
Qual o valor de n e de k _________________
Separadores:
. [ ] ( ) ; ,
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 15 -
Operadores:
Operadores Descrição
== Igualdade
!= Negação
+ - * / Aritméticos
&& e
|| Ou
Concatenação
O operador + é utilizado para concatenar objetos do tipo String, produzindo
uma nova String:
String PrimeiroNome = “Antonio”;
String SegundoNome = “Carlos”;
String nome = PrimeiroNome + SegundoNome;
Casting ( Conversão de tipos )
A linguagem Java não suporta conversões arbitrárias de tipos de variáveis. Você
deve explicitar a conversão entre tipos de variáveis.
Exemplo:
long bigval = 6; // Operação válida
int smallval = 99L; // Operação inválida porque são de tipos diferentes
float z = 12.414F; // Operação válida
float zp = 12.414 ; // Operação inválida porque esta tentando atribuir um valor
double.
Convertendo
Long bigValue = 99L;
Int squashed = (int)(bigValue);
Controle de Fluxos
Declarações de Fluxos
If, else
if (expressão) // expressão cujo retorno é um valor do tipo boolean
{ Declarações ou blocos }
else // caso a condição anterior não seja satisfeita
{ Declarações ou blocos }
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 16 -
switch
switch (expressão) // Esta expressão deve ser do tipo int ou char
{
case cond01:
declarações;
break; // usado para sair do case.
case cond02:
declarações;
break;
case cond03:
declarações;
break;
}
for Loops
for (expr_inicial; condição_boolean; incremento)
{
Declarações ou blocos;
}
while Loops
while(condição_boolean)
{
Declarações ou blocos;
}
do Loops
do
{
Declarações ou blocos;
}
while(condição_boolean);
Exercícios:
Exercício 01 : Defina os valores de x,z e y após execução do programa .
public class Prog0301
{
public static void main(String arg[ ])
{
int x = (int)(Math.random()*100);
int z=0 ;
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 17 -
int y=0 ;
if (x > 50)
{
y = 9;
}
z = y + x;
}
}
Exercício 02 Defina a saída após execução do programa.
import java.io.*;
class acum1{
public static void main(String args[]){
BufferedReader entrada;
entrada = new BufferedReader(new InputStreamReader(System.in));
int cont=1,acumu=0;
try{
while (cont <=50)
{
System.out.println(cont);
cont ++; //contador=contador+1
}
}
catch (Exception e){
System.out.println("Ocorreu um erro");
}}}
Exercício 03
public class Prog0303
{
public static void main(String arg[])
{
int valor = (int)(Math.random()*5);
switch(valor)
{
case 0:
System.out.println("Primeira Opção (Valor igual a zero)");
break;
case 1:
System.out.println("Segunda Opção (Valor igual a um)");
break;
default:
System.out.println("Outras Opções (Valor maior que um)");
break;
} } }
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 18 -
Exercício 04
public class Prog0304
{
public static void main(String arg[])
{
int valor = (int)(Math.random()*5);
while(valor <> 0)
{
valor = (int)(Math.random()*5);
System.out.println("Valor igual a " + valor);
}
}
}
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 19 -
Capítulo 04
- Arrays
Declaração de Arrays
char s [ ];
Point p [ ];
Em Java um Array é uma classe.
Criando um Array
Você pode criar arrays, ligando-o a todos os objetos, usando a palavra new, da
seguinte forma:
s = new char[20];
p = new Point[100];
String names[ ];
names = new String[4];
names[0]= “Georgina”;
names[1]=“Jen”;
names[2]=“Simon”;
names[3]= “Tom”;
ou
String names[ ];
names = new String[4];
String names [ ] = { “Georgina”, “Jean”, “Simon”, “Tom”};
Arrays Multi-dimencionais
Java não possui arrays multi-dimencionais, mas ele permite declarar um array
que é baseado em um outro array.
int twoDim [ ] [ ] = new int [4] [ ] ;
twoDim[0] = new int [5] ;
twoDim[1] = new int [5] ;
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 20 -
Exercícios
classe Prog0401
{
thisArray int;
thatArray int;
public static void main (String args [ ])
{
int[ ] thisArray = {1,2,3,4,5,6,7,8,9,10}
for (int i =0; i < thisArray.length; i++)
{
System.out.println( “ Conteúdo do Array “ + thisArray[i]);
}
}
}
class Prog0402 {
public static void main(String arg[ ])
{
int A[] = new int[3];
A[0] = 50;
A[1] = 100;
A[2] = 150;
System.out.println("Tamanho do vetor = " + A.length);
int conta;
for(conta = 0; conta< A.length ; conta++)
{System.out.println("indice = " + conta + " valor= " + A[conta] );}
}
}
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 21 -
Capítulo 5
Dialogs
Linguagem de Programação Java - JavaSE
Profa.Me Denise
- 22 -
Exemplo :
import java.io.*;
import javax.swing.*;
public class Exemplo
{
public static void main(String arg[])
{
String a = " ";
a = JOptionPane.showInputDialog(null,"Nome do Aluno =");
JOptionPane.showMessageDialog(null,a,"Nome do Aluno",JOptionPane.PLAIN_MESSAGE);
System.exit(0);
}
}
Exercícios :
Exercício01:
// Exemplo classe JOptionPlane
import javax.swing.JOptionPane;
public class adicao{
public static void main(String args[]){
String primeiro,segundo;
int numero1,numero2,soma;
primeiro=JOptionPane.showInputDialog("Entre com o primeiro numero");
segundo=JOptionPane.showInputDialog("Entre com o segundo numero");
numero1 = Integer.parseInt(primeiro);
numero2 = Integer.parseInt(segundo);
soma=numero1 + numero2;
JOptionPane.showMessageDialog(null,"A soma sera:" +
soma,"Resultado",JOptionPane.PLAIN_MESSAGE);
System.exit(0);
}}
REFERÊNCIA BIBLIOGRÁFICA :
1. DEITEL, Java Como Programar
BOOKMAN
2. Leandro Rodrigues - Portal Java - Dialogs
3. Nélio Alves, Programação JAVA.