Você está na página 1de 79

PROGRAMAÇÃO

ORIENTADA A OBJETOS
Prof. Ildo Ramos Vieira
Graduado em ciências de computação – UFC
Especialista em Segurança de Informação - IGTI
Mestre em ciências de computação - UFC
Doutorando em Engenharia de Teleinformática - UFC
SUMÁRIO
1. Introdução ao Paradigma de orientação a objetos;
2. Introdução a Linguagem Java:
 Características, sintaxe;
 Operadores, tipos primitivos, declaração de variáveis;
 Estruturas condicionais e de controle;
3. Conceitos e técnicas de orientação a objetos:
 Classes, objetos, atributos e métodos;
 Encapsulamento;
 Herança ;
 Polimorfismo;
PLANO DE ENSINO
› LINK:
– http://sgc.estacio.br/EmissaoDocumentoServico.aspx?tipo=PE&
chave=44933|33456
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
Porque Java:
› +1,9 bilhão de desktops executam Java.

› 100% de Blu-ray players executam Java.

› 1,4 bilhões de Placas Java são fabricadas a cada ano.

› Decodificadores Java, impressoras, câmeras Web, games, sistemas


de navegação automotiva, casas lotéricas, dispositivos médicos,

estações de pagamento de estacionamento e mais.


INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
Porque Java:
1. Simples, porém versátil, robusta e muito segura;
2. Portável (independente de sistema operacional);
3. Gratuita e open source;
4. Dirigida por uma especificação aberta;
5. Popular, rodeada por uma comunidade muito ativa;
6. De alta aceitação e com suporte da indústria;
7. Muitas ferramentas disponíveis;
8. Muita documentação disponível.
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
O que é Java ?
1. Uma linguagem de programação;
2. Uma plataforma de desenvolvimento;
3. Um software distribuído pela Oracle;
4. Um ambiente de execução de programas;
5. Uma ilha da Indonésia.
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
Funcionamento das Linguagens
1. O computador é um hardware que só entende operações muito
básicas (zeros e uns);
2. Programa executável = coleção de instruções em linguagem de
máquina;
3. Criar programas em linguagem de máquina é um pouco difícil;
4. Usamos linguagens de programação de alto nível;
5. Precisamos de um programa que transforme uma linguagem em
outra: um tradutor.
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
Tradução de Programas
1. Compilador
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
 O Java funciona multiplataforma com o uso de máquina
virtual (JVM – Java Virtual Machine);
 O código Fonte (NomeClasse.java) é compilado para um
outro código intermédiario denominado byte code
(NomeClasse.class);
 O máquina virtual lê o byte code e faz a execução do
código.
INTRODUÇÃO A PROGRAMAÇÃO O. OBJETO
Tradução de Programas
1. Compilador
2.0 INTRODUÇÃO AO JAVA
› História do Java
1. 1995: Patrick Naughton e Sun Microsystems;
2. Projeto Green – busca por inovação: *7;
3. James Gosling e a linguagem Oak;
4. Projeto Green muda de rumo depois que *7 não
deslancha: a aposta é na Internet;
5. Oak vira Java, graças a um café;
6. Nascem as Applets, Java é incluída no Netscape,
disponibilizada ao público e deslancha;
7. Java fez 10 anos em 2005;
8. Se tornou open source em 2006.
9. Em 2009 java passou a fazer parte da Oracle.
2.0 INTRODUÇÃO AO JAVA
› Plataforma do Java = SO + Hardware:
1. Windows + PC (Intel / AMD);
2. Linux + PC;
3. MacOS X + Macintosh.
› Java situa-se um nível acima do SO, formando uma
nova plataforma de computação:
1. Portável (“WORA” - Write Once Run Anywhere);
2. Baseada na Máquina Virtual Java (JVM);
3. Linguagem Java é a parte central da plataforma.
2.1 Características: JAVA
› Orientada a objetos: Quase pura, pois possui tipos
primitivos.
› Baseada em C++: Sintaxe semelhante; porém mais
simples.
› Portável: Compilação para bytecode e interpretação na
JVM; Especificação rígida (JCP).
› Projetada para ambientes distribuídos: Suporte de alto
nível para construção de aplicações em rede (sockets,
RMI, etc.);
› Segura: Assinatura digital e criptografado.
› Sintaxe fortemente rigorosa.
› Case Sensitive;
2.1 INTRODUÇÃO AO JAVA
› Aspectos Gerais.
1. Uma coleção de APIs (classes e componentes) para
o desenvolvimento de aplicações multiplataforma;
2. Um ambiente de execução presente em browsers,
mainframes, SOs, celulares, palmtops, cartões
inteligentes, eletrodomésticos, IPAD,etc.
› Edições Java
1. Java Standard Edition (J2SE);
2. Java Enterprise Edition (J2EE);
3. Java Mobile Edition (J2ME).
2.1 INTRODUÇÃO AO JAVA
› Java Standard Edition (J2SE);
1. Ferramentas de desenvolvimento e API núcleo da
plataforma (base para as demais);
2. Permite o desenvolvimento de aplicações desktop,
com interface gráfica, acesso à bancos de dados,
I/O, acesso à rede, etc.;
3. Dividida em:
JDK = Java Development Kit;
JRE = Java Runtime Environment.
2.1 INTRODUÇÃO AO JAVA
› JDK (Java Development Kit)
1. Coleção de ferramentas de linha de comando para,
entre outras tarefas, compilar, executar e depurar
aplicações Java;
› JRE (Java Runtime Environment)
1. Tudo o que é necessário para executar aplicações
Java; É a única parte da plataforma Java que os
clientes precisam instalar.
2. Parte do J2SDK e dos principais Sistemas
Operacionais.
2.1 INTRODUÇÃO AO JAVA
› API J2SE
2.1 INTRODUÇÃO AO JAVA
› API J2SE
1. AWT/Swing: interfaces gráficas;
2. Java2D: desenho;
3. JDBC: acesso a bancos de dados;
4. JNDI: acesso a servidores de nomes;
5. RMI: invocação remota de métodos ;
6. i18n: suporte à internacionalização;
7. I/O: entrada e saída (arquivos);
8. JNI: integração com linguagens nativas;
9. Math: cálculos matemáticos;
2.1 INTRODUÇÃO AO JAVA
› API J2SE
10. Networking: transmissão de dados via rede;
11. Security: segurança;
12. Serialization: persistência por serialização;
13. XML: processamento de XML e afins;
14. Lang & Util: núcleo da linguagem, utilitários;
15. Concurrency: programação concorrente;
16. Logging: funções de relatório (log);
17. Reflection: RTTI (reflexão, introspecção).
2.1 INTRODUÇÃO AO JAVA
› Java Enterprise Edition (J2EE);
1. Aplicações corporativas: Multi-camadas, distribuídas,
centradas em servidores, altamente robustas,
estáveis e escaláveis.
2. Aplicações Web: Servlets, JSP, Web Services, JSF,
etc.;
3. Inclui especificações da plataforma Enterprise Java
Beans (EJB): Componentes gerenciados integrados
a outras tecnologias Java EE para prover acesso
remoto, persistência e transações transparentes, etc.
2.1 INTRODUÇÃO AO JAVA
› Java Mobile Edition (J2ME).
› Permite o desenvolvimento de aplicações para
dispositivos móveis:
1. Telefones celulares;
2. PDAs (Palm, iPaq, etc.);
3. Dispositivos embarcados (embedded);
4. Java Card: aplicações para Smart Cards e outros
dispositivos muito limitados.
2.1 INTRODUÇÃO AO JAVA
› ANATOMIA CLASSE JAVA
2.1 INTRODUÇÃO AO JAVA
› Ambientes integrados de desenvolvimento facilitam o
trabalho de programação:

1. Eclipse (http://www.eclipse.org);

2. NetBeans (http://www.netbeans.org);

3. IntelliJ IDEA (http://www.jetbrains.com/idea);

4. Jbuilder http://www.borland.com/br/products/jbuilder/);

5. Dentre outras...
PROGRAMAÇÃO ORIENTADA A OBJETO 1

DECLARAÇÃO DE VARIÁVEIS EM
JAVA

Prof. Ildo Ramos Vieira


PROXIMA AULA
23/08/2023
PROGRAMAÇÃO ORIENTADA A OBJETO 1

DECLARAÇÃO DE VARIÁVEIS EM
JAVA

Prof. Ildo Ramos Vieira


2.2 Já tá no SANGUE

› Sempre que pensarmos em resolver um problema


computacional:
2.2 Declarar variáveis (algo que já sei )

› Exemplo1: calcular o delta = b² - 4*a*c de uma

equação do segundo grau.


1. Quais são os variáveis de entrada e saída ?

1. Verificar as variáveis CLIR


2.2 Tipos de variáveis em Java
2.2 Declarar variáveis em Java
› Sintaxe:
› < TIPO DE VARIÁVEL> espaço < nomeDaVariavel> ;
› Ex: float numero ;
char letra;
String nome;
› Exemplo1: calcular o delta = b² - 4*a*c de uma equação
do segundo grau.
1. Quais são os variáveis de entrada e saída ?

2. Verificar as variáveis CLIR


2.3 Operadores em java
1. Relacionais : Aritméticos:

Operador Descrição
2. Lógicos: igualdade ==
Negação (NOT) !=
E (AND) &&
OU (OR) ||
2.3 Operadores em Java

› Atribuição Composta:

Tipo Operador Resultado


+= a += b; a=a+b
-= a -=b; a=a-b

/= a /=b; a=a/b

*= a *=b; a=a*b
2.3 Operadores em Java

› Atribuição Composta:

Tipo Resultado
a++ a=a+1
++a a+1=a

b-- b=b-1

-- b b-1=b
2.4 EXERCÍCIO
› Exemplo:
2.4 EXERCÍCIOS
1. Calcular e imprimir a área do trapézio: área =
(b+B)*h/2.

2. O preço de um automóvel é calculado pela soma


do preço de fábrica com o preço dos impostos
(45% do preço de fábrica) e a porcentagem do
revendedor (28% do preço de fábrica). Leia o
nome do automóvel e o preço de fábrica e escreva
o nome do automóvel e o preço final.
2.4 EXERCÍCIOS
3. Ler dois números inteiros, x e y, e imprimir o
quociente e o resto da divisão inteira entre eles.

4. Receba o ano de nascimento de uma pessoa,


calcule e mostre a idade dessa pessoa em 2013, e
quantos anos essa pessoa terá em 2030.

5. Cálculo da função f(x, y) = 2x + 3y2, num


domínio real.
2.4 EXERCÍCIO: Q1
› Exemplo:
2.4 EXERCÍCIO: Q2
› Exemplo:
2.4 EXERCÍCIO: Q3
› Exemplo:
2.5 Saídas em Java: System.out
› Tipos: println, print, printf.
1. System.out.println: Insere uma nova linha,
deixando o marcador posicionado na linha
abaixo.
2. System.out.print : Mantém o cursor na mesma
linha. Geralmente são utilizadas sequências de
escape para pular uma linha.
2.5 Caractere de Escape
Variações Descrição
Nova linha. Posiciona o cursor de tela no início da
\n próxima linha

\t Tabulação horizontal.
Posiciona o cursor da tela no início da linha atual - não
\r avança para a próxima linha.
Barras invertidas. Utilizada para imprimir um caractere de
\\ barra invertida.

Aspas duplas. Utilizada para imprimir um caractere de


\” aspas duplas.

Exemplo: System.out.println("Você digitou:\b" + num);


2.5 Exemplo: Caractere de Escape
2.5 Exemplo de Escape
› Tipos: println, print, printf.
1. System.out.printf: Exibe os dados formatados.

Especificador Descrição
%d Representa números inteiros
%f Representa números float
%2f Representa números double
%b Representa valores booleanos
%c Representa valores char
Obs: O especificador de formato %s, que é um marcador de
lugar para uma String.
2.5 Exemplo: printf
2.6 Saída de dados: JOptionPane
2.7 Entrada de dados em JAVA
› JOptionPane.showInputDialog: Aparecerá uma
pequena tela solicitando que o usuário informe um valor;

› Obs: JOptionPane.showInputDialog retornará uma


string e você terá que converter para o Tipo Desejado.
2.7 Exemplo: Entrada com JOptionPane
2.6 Entrada de dados em JAVA
› Funcionamento do Programa

› Depois existe a conversão do valor digitado (String) para


o tipo desejado (int):

precoFab = Integer.parseInt(entradaPreco);

› Outras conversões:

1. Real: Float.parseFloat(entradaPreco);

2. Real com dupla precisão: Double.parseDouble(ent);


2.8 Entrada de dados: Scanner
1. importar o pacote java.util: import java.util.Scanner;

2. Entrada de dados das variaveis:


› n = new Scanner(System.in).nextInt();
› preco = new Scanner(System.in). nextFloat();
› salario = new Scanner(System.in). nextDouble();
› s = new Scanner(System.in). nextLine();
2.9 Exemplo: Entrada com Scanner
2.9 EXERCÍCIOS: JOptionPane e Scanner
1. Calcular e imprimir volume de uma esfera:
V=(4/3)*PI*raio³ obs: Utilizar classe Scanner.

2. O sistema de avaliação de determinada disciplina, é


composto por três provas. A primeira prova tem peso
2, a Segunda tem peso 3 e a terceira prova tem peso
5. Faça um programa para calcular a média final de
um aluno desta disciplina. obs: Utilizar classe
JoptionPane.
PROXIMA AULA
30/08/2023
3.0 Estruturas de Controle: if, if-else
1. Sintaxe:

2. Regra:
 Condições em instruções if podem ser formadas
utilizando operadores de igualdade ou relacionais.
3.0 Exemp: Estrutura de Controle: if-else
3.1 Estruturas de Controle: if, if-else
1. Sintaxe:

2. obs:
 Verificações lógicas : AND (&&) e OR (||)
3.1 Exemp: Estrutura de Controle: if-else
3.1 Exemp: Estrutura de Controle: if-else
3.1 Exercício: if-else
› Faça um programa em java que receba três valores
inteiros que representarão os lados de um triângulo
e serão fornecidos pelo usuário. Verifique se os
valores formam um triângulo e classifique: eqüilátero
(três lados iguais), isósceles (dois lados iguais),
escaleno ( três lados diferentes). Lembre-se de que,
para formar um triangulo, nenhum dos lados pode
ser igual a zero, um lado não pode ser maior do que
a soma dos outros dois lados
3.1 Exercício: if-else
3.1 Exercício: if-else
3.2 Forma simplificada: if- else
› Operador ternário: Produz um valor de acordo com a
expressão :
 <expressão> ? <valor 1> : <valor 2> ;
 Se <expressão> for true, o resultado é <valor
1> , caso contrário o resultado é < valor 2>
› Exemplo:
3.3 Estruturas de Repetição: For
› Sintaxe em pascal:
FOR i:=valor inicial TO valor final DO
BEGIN
comando1;
comando2;
END;
› Sintaxe em Java:
for ( inicialização ; condição ; inc/ dec ){
comando1;
comando2;
}
3.4 Estruturas de Repetição: While
› Sintaxe em pascal:
Inicialização
WHILE condição DO
BEGIN
comando1;
Incrementa / decrementa;
END;
› Sintaxe em Java:
Inicialização
while ( condição ){
comando1;
Incrementa / Decrementa;
}
3.5 Exemplos
3.5 Exemplos
3.5 Exercício
1. Faça um programa que leia “N” valores inteiros. Para
cada número lido, mostre o valor lido e o fatorial desse
valor.
2. Faça um algoritmo para ler um valor X e calcular Y =
X+2X+3X+4X+5X+…+200X.
3. Faça um programa que monte os 20 primeiros termos
da sequencia de Fibonacci. (0,1,1,2,3,5,8,...)
4. Faça um algoritmo que receba 5 números, encontre o
mostre o menor número dentre os números digitados.
5. Faça um programa que receba 10 números , calcule e
mostre a soma dos números pares.
3.5 Exercício
3.5 Exercício
3.5 Exercício
3.5 Exercício
3.5 Exercício
3.6 Estrutura de desvio de fluxo: switch

1. Utilizados quando desejamos fazer uma escolha entre


vários caminhos alternativos e pode se baseada num
valor inteiro.
2. Regra: A variavel fornecida à instrução switch deve ser:
byte, short, char, int. Não pode ser long, float,
double.
3.6 Estrutura de desvio de fluxo: switch
3.6 Exercício
3.6 Exercício: switch
3.6 Exercício: switch
3.6 Exercício: switch
3.6 Exercício: switch
3.6 Exercício de Revisão

Você também pode gostar