Buscar

Programação Aplicativos

Prévia do material em texto

06/10/2016
1
Profª. Drª. Adriana Aparicio – adriana.nascimento@uva.br
Prof. Dr. Engº Carlos Sicsú – caugusto.sicsu@uva.br
Curso de Engenharia
Características da 
linguagem Java
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 2
06/10/2016
2
Comentários
Existem três tipos permitidos de comentários nos
programas feitos em Java:
// comentário de linha: tudo na linha a partir dele é
desconsiderado pelo compilador.
/* comentário de bloco: tudo entre o início e o fim é
desconsiderado pelo compilador.
*/
/** comentário de documentação: tudo entre o início e o
fim é desconsiderado pelo compilador, mas é considerado
pelo documentador. (Arquivos de documentação).
*/
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 3
Ponto e vírgula, Blocos e o espaço em branco
• Na linguagem java os comandos são terminados
com o sinal de ponto e vírgula ( ; )
• Um bloco tem início e tem o seu fim
representados pelo uso das chaves { }
• O uso dos espaços em branco (identação)
permite uma melhor visualização dos comandos
e em consequência facilita a sua manutenção.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 4
06/10/2016
3
Identificadores:
Na linguagem Java um identificador é usado para
identificar um elemento (variável, constante, atributo,
método, classe, etc) é iniciado por uma letra, um
símbolo de underscore ( _ ), ou sinal pelo sinal de dólar
($). O java, faz distinção entre letras maiúsculas e
minúsculas (CASE SENSITIVE):
Identificadores válidos:
identificador
userName
Username
_sys_var1
$change
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 5
Tipos de dados no Java
• Tipo Lógico
- boolean: true e false.
• Tipo Textual
- String
O tipo String não é um tipo primitivo, mas
uma classe especial que gera objetos e é usado para
representar uma sequência de caracteres.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 6
06/10/2016
4
• Tipos Inteiros: byte, short, int e long.
Existem quatro tipos de inteiros:
Tamanho do Inteiro Tipo Escopo
8 bits byte -27 . . . . 27 - 1
16 bits short -215 . . . . 215 - 1
32 bits int -231 . . . . 231 - 1
64 bits long -263 . . . . 263 - 1
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 7
• Tipo Ponto Flutuante (Real)
Existem dois tipos de números reais: float e double.
Um float é representado por 32 bits e um double
por 64 bits. Um double possui maior precisão, ou seja,
podemos armazenar valores muito menores ou muito
maiores, mas utilizam maior espaço de memória para o
armazenamento.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 8
Valor Descrição Tipo
3.14 Um ponto flutuante simples float
6.02E23 Um valor de ponto flutuante longo double
2.718F Um valor de ponto flutuante de menor precisão float
123.4E+306D Um valor de ponto flutuante de maior precisão double
06/10/2016
5
Palavras Reservadas (Não podem ser usadas como identificadores)
abstract do implements private throw
boolean double import protected throws
break 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
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 9
Convenções de Codificação na linguagem Java:
• Classe, 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úsculas. Exemplo:
class Aluno
• Interfaces - Nomes de Interfaces seguem o mesmo formato de
classes. Exemplo: interface Atleta
• Métodos - Nomes de métodos podem ser verbos, podendo
misturar entre maiúsculas e minúsculas, sendo entretanto a
primeira letra minúscula e a cada nova palavra passa-se a
iniciar por maiúscula.
Exemplos: cadastrar( )
setNome ()
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 10
06/10/2016
6
Convenções de Codificação na linguagem Java:
• Atributos - Nomes de atributos seguem a regra
de identificação de métodos, podendo misturar
entre maiúsculas e minúsculas, sendo entretanto
a primeira letra minúscula e a cada nova palavra
passa-se a iniciar por maiúscula.
Exemplos: String nome;
double alturaPredio;
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 11
• 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
obrigatório de { } (chaves);
• Espaços - Convencionou-se o uso de quatro espaços para
identação;
• Comentários - Use os comentários para explicar os
segmentos de código que não são óbvios.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 12
06/10/2016
7
class Exemplo1 {
int idade;
String nomeCompleto;
void maiorIdade( ) { 
if(idade >= 18) {
System.out.println(“Maior Idade”);
}
else {
System.out.println(“Menor Idade”);
}
}
int idade() {
return idade;
}
}
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 13
Identação
Inicialização de variáveis
No Java não é permitido o uso de variáveis indefinidas,
ou seja, java é uma linguagem de programação fortemente
tipada. Uma linguagem de programação fracamente tipada
permite o uso de variáveis sem a definição de tipo.
Como Java é uma linguagem fortemente tipada, todas as
variáveis devem ser definidas.
Variáveis definidas dentro de métodos são chamadas
de variáveis automáticas, locais, temporárias ou estáticas e
devem ser inicializadas antes do uso.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 14
06/10/2016
8
Operadores Aritméticos:
Operador Descrição
= Atribuição
+ Soma
- Subtração
* Multiplicação
/ Divisão
% Resto da divisão inteira
Observação: Quando um número inteiro e um número em ponto
flutuante são usados como operando sem uma única operação
aritmética, o resultado é também um número em ponto
flutuante. O número inteiro é implicitamente convertido em um
número em ponto flutuante antes da expressão ser avaliada.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 15
Todo cálculo entre inteiros resulta em um inteiro,
mesmo a divisão. Para uma divisão entre inteiros que
se queira a parte fracionária, é necessário converter o
tipo, isso pode ser feito através de cast.
Exemplos:
int x=7, y = 3, z;
z = x / y; // z valerá 2 7 / 3 = 2 e resto 1.
Podemos então usar o cast:
int x=7, y = 3;
float z;
z = (float) x / y; // z valerá 2.33334
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 16
06/10/2016
9
• Operadores Relacionais:
Operador Descrição
== Igualdade / Comparação
!= Diferente (Não igual)
> Maior que
< Menor que
>= Maior ou igual a
<= Menor ou igual a
Exemplos:
if(a > b)
if(a+b >= c)
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 17
• Operadores em Expressões Lógicas:
Operador Descrição
! NÃO lógico
&& E lógico
|| OU lógico
Exemplos:
if( a > b && c <= d)
if( ! a < b || c != d && e > f )
Precedência: !, &&, ||
Assim, o segundo exemplo equivale a: 
if( ( !(a < b) || (c != d && e > f) ) )
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 18
06/10/2016
10
Exercícios:
• Sabendo-se que: a=7, b=8, c=16, d=4 E e=12:
Resolva as seguintes expressões lógicas:
1. Se( a > b && d > e )
2. Se( a+d >= e || c-b > d )
3. Se( a+b-d <= c || a+b >= d && d+e != c )
4. Se( a>b || b<c && c <= d || b-d > a )
5. Se(d < a && c>b ||b-a < d && e+d >= c)
6. Se(d < a && !c>b || !b-a < d && e+d >= c)
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 19
Estruturas de Controle de 
Fluxo
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 20
06/10/2016
11
Estruturas Condicionais:
• Se (if):
Se (condição) entao if (condição) {
instruções instruções;
Fimse }
Se/Senão: if ... else, A cláusula else é opcional.
Se (condição) entao if (condição) {
instruções instruções;
} 
Senao else {
instruções instruções;
Fimse }
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 21
Estruturas de Repetição:
• Para: for
Estrutura de repetição caracterizada pela existência de
três parâmetros (opcionais):
Valor inicial,
Condição para parada das iterações,
Quantidade de incrementos/decrementos a cada iteração.
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 22
Para cont de x ate y passo z for(inic; cond; passo)
// Repetição controlada por uma variável:
Para i de 0 ate 100 passo 1 faca for (i=0; i<=100; i=i+1) { 
instruções instruções;
FimPara }
06/10/2016
12
• while
Estrutura de repetição que realiza as operações
desejadas enquanto uma determinada condição
especificada for verdadeira.
// Teste de condição no início
Enquanto (condição) faça while (condição) {
instruções instruções;
FimEnquanto }
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 23
• do ... while
Estrutura de repetição semelhante à anterior, com o diferencial de
que as condições são verificadas ao final da execução, permitindo as
operações especificadas sejam sempre executadas pelo menos uma
vez.
// Teste de condição no final
Faça do 
Instruções {
instruções;
Enquanto (Condição) } while (condição);
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 24
06/10/2016
13
Exemplo de programa em java com entrada de dados:
import java.util.Scanner;
public class EntradaDados {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String matricula, nome;
double nota1, nota2;
int idade; 
System.out.println("Entre com o Matricula.......: ");
matricula=(sc.nextLine());
System.out.println("Entre com o Nome............: ");
nome=(sc.nextLine());
System.out.println("Entre com a Nota A1.........: ");
nota1=(Double.parseDouble(sc.nextLine()));
System.out.println("Entre com a Nota A2.........: ");
nota2=(Double.parseDouble(sc.nextLine()));
System.out.println("Entre com a Idade .........: ");
idade=(Integer.parseInt(sc.nextLine()));
System.out.println("Matrícula: " + matricula + " Nome: " + nome + " Nota 1: " + nota1 + " Nota 2: " 
+ nota2 + " Idade : " + idade + " Media: " + (nota1 + nota2 )/2 );
}
}
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 25
• Monitoria:
– Sexta-feira de 16:00 às 18:00hs (A325)
Monitor: Luis Antônio
– Quarta-feira de 10:00 às 11:00hs (A304)
e de 17:00 às 18:00hs (A326)
Monitor: Túlio
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 26
06/10/2016
14
Fim da Parte II
06/10/2016 Profª. Drª. Adriana Aparicio - Prof. Dr. Engº Carlos Sicsú 27

Continue navegando