Buscar

Linguagem de Programação aula Revisão AV2

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Linguagem de Programação – REV AV2
Análise e Desenvolvimento de Sistemas
Ceará, 30 de Maio de 2016
CONTEÚDO
Revisão AV2
Paradigma de Orientação à Objetos
Máquina Virtual Java
Utiliza o conceito de máquina virtual;
Camada responsável por interpretar os bytecodes
CARACTERÍSTICAS
FASES DE UM PROGRAMA
Os programas Java normalmente passam por cinco fases para serem executados:
Fase 1 (Edição): Consiste em editar um arquivo com código em Java e salvá-lo com a extensão .java
Fase 2 (Compilação): Comando javac compila o programa. O compilador Java traduz (.java => .class)
Fase 3 (Carga): Carrega o programa na memória antes de ser executado. Carregador de classe, pega o arquivo(s) .class que contém os bytecodes
Fase 4 (Verificação): O verificador assegura que os bytecodes são válidos e não violam as restrições de segurança de Java
Fase 5 (Execução): A JVM máquina virtual Java (Interpretador) interpreta (em tempo de execução) o programa, realizando assim a ação especificada pelo programa
FASES DE UM PROGRAMA
Orientação a objetos
pressupõe que o mundo é composto por objetos, onde um objeto é uma entidade que combina estrutura de dados e comportamento funcional. No paradigma orientado a objetos, os sistemas são criados a partir dos objetos que existem no domínio do problema, isto é, os sistemas são modelados como um conjunto de objetos que interagem entre si.
6
PARADIGMA DE ORIENTAÇÃO À OBJETOS
Definição : Um objeto é a representação computacional de um elemento ou processo do mundo real
Exemplos : cadeira, aula, venda, cliente …
Os objetos possuem características e comportamentos
Cada característica ou propriedade é chamada de atributo do objeto
Por exemplo, o objeto moto tem como atributos cor, marca, …
Podemos sempre associar um conjunto de valores aos atributos.
Exemplo : a cor da moto pode ser vermelha, azul, verde, etc.
7
PARADIGMA DE ORIENTAÇÃO À OBJETOS
Cada comportamento é chamado de método do objeto
Um comportamento representa uma reação ou resposta de um objeto a uma ação do mundo real
Exemplos de comportamentos para o objeto moto : acelerar, parar ...
8
PARADIGMA DE ORIENTAÇÃO À OBJETOS
As classes são os elementos básicos para construção de programas OO em linguagens como C++, Java e C#. Assim, para construir um programa OO devemos, inicialmente, identificar as classes que fazem parte do problema que estamos tentando resolver
Ao analisar um problema a ser resolvido, as classes normalmente são extraídas:
1. dos conceitos que compõem o domínio do problema;
2. dos conceitos adotados na solução do problema.
9
PARADIGMA DE ORIENTAÇÃO À OBJETOS
Uma classe encapsula atributos e métodos, ocultando os detalhes de implementação dos objetos
Princípio do desenvolvimento orientado a objetos: o encapsulamento determina que a implementação de um objeto somente deve ser acessada através de uma interface visível e bem definida
Os atributos não podem ser manipulados diretamente. Os atributos podem ser alterados ou consultados somente através dos métodos do objeto.
10
ENCAPSULAMENTO
Princípio do Encapsulamento:
Atributos não devem ser visíveis por nenhum objeto que não seja instância da própria classe ou de uma classe descendente (herança)
Assim, devemos declarar nossos atributos sempre como protected ou private
11
ENCAPSULAMENTO
public NomeDaClasse ([parâmetros]) [throws exceções]
{
[ corpo do construtor ]
}
Observe que:
Construtores devem ter, obrigatoriamente, o mesmo nome da classe
Construtores não têm nenhum tipo de retorno
Construtores podem receber parâmetros que serão usados na inicialização do objeto
Quando não definimos nenhum construtor para a classe, o Java gera automaticamente um construtor default ou padrão.
12
MÉTODO CONSTRUTOR
Em alguns casos precisamos implementar alguns métodos que independem dos objetos de uma classe. Nesse caso, chamamos esses métodos de métodos da classe. Tais métodos são implementados usando a palavra static.
Todos os métodos da classe Math são estáticos
13
MÉTODO ESTÁTICO
A principal diferença entre os métodos estáticos e os métodos de instância está na sua chamada.
Exemplos:
double x = 12.2;
double y = Math.sqrt(x); // calcula a raiz quadrada de x
long z = Math.round(y); // arredonda o valor de y
Constante estática PI: Math.PI
14
MÉTODO ESTÁTICO
Métodos da classe Math : abs, acos, asin, atan, ceil, cos, exp, floor, log, max, min, pow, random, round, sin, tan, sqrt. Destaque para abs, max, min, pow, round, sqr
Regra para chamar um método estático : Classe.Método O operador ponto é usado.
Atributos estáticos
No caso de atributos estáticos só existe UMA cópia desse atributo na memória que é COMPARTILHADA por todos os objetos da classe.
Assim como os métodos estáticos, os atributos estáticos são chamados atributos da classe e, por isso, podem ser acessados diretamente a partir da classe
15
MÉTODO ESTÁTICO
No caso de atributos estáticos só existe UMA cópia desse atributo na memória que é COMPARTILHADA por todos os objetos da classe.
Assim como os métodos estáticos, os atributos estáticos são chamados atributos da classe e, por isso, podem ser acessados diretamente a partir da classe.
16
MÉTODO ESTÁTICO
Métodos de instância :
1) Só podem ser chamados a partir de objetos da classe.
2) Podem acessar (ler ou alterar) atributos da instância ou atributos da classe (estáticos).
Métodos estáticos :
1) São chamados a partir da própria classe.
2) Só podem acessar (ler ou alterar) atributos da classe (estáticos).
17
DIFERENÇAS IMPORTANTES
Como tratar, em Java, as seguintes situações?
Divisão por zero
Erro na conversão de tipos (por exemplo, converter uma string que só contém letras e números)
Erro na abertura de um arquivo
Etc...
Todas essas situações em Java são chamadas de exceções e existe um mecanismo específico para tratá-las.
18
TRATAMENTO DE EXCEÇÕES
O tratamento de exceções é um mecanismo que permite que o programa defina como as situações inesperadas serão tratadas.
Com relação ao tratamento de exceções temos :
1. Blocos try...catch...finally
2. Comando throws
3. Comando throw
19
TRATAMENTO DE EXCEÇÕES
A classe Exception é a classe mãe de todas as exceções que nos interessa. Ela possui alguns métodos úteis e comuns a todas as exceções:
Construtor Exception(String msg): permite criar uma exceção e armazenar a mensagem de erro.
getMessage(): retorna a mensagem de erro.
printStackTrace(): imprime a pilha de chamadas no mesmo formato da JVM.
getStackTrace(): retorna a pilha de chamadas. Nesse caso você pode implementar a sua própria impressão ou salvar essa informação em outro local ou formato (por exemplo, para montar um log de erros).
20
TRATAMENTO DE EXCEÇÕES
VISÃO GERAL DO SWING E AWT
Uma interface gráfica com o usuário ou GUI (lê-se : ?gui?) fornece um mecanismo amigável ao usuário para interagir com o aplicativo.
Exemplo de GUI : janela do Internet Explorer
As GUIs são construídas a partir de componentes GUI.  Tais componentes são chamados às vezes de controles ou widgets (abrevia-se : window gadgets).
Um componente GUI é um objeto com que o usuário interage via mouse, teclado ou outro formulário de entrada, como reconhecimento de voz.
CLASSE JOPTIONPANE
É uma classe com métodos estáticos que contém métodos que exibem diálogos de mensagem e diálogos de entrada
Métodos :
1) showMessageDialog
JOptionPane.showMessageDialog(null, "Esta é uma mensagem !");
JOptionPane.showMessageDialog(null, "Texto da Mensagem", "Titulo da janela criada", TIPOICONE);
onde TIPOICONE  pode ser:
JOptionPane.ERROR_MESSAGE
JOptionPane.INFORMATION_MESSAGE
JOptionPane.WARNING_MESSAGE
JOptionPane.QUESTION_MESSAGE
JOptionPane.PLAIN_MESSAGE
CLASSE JOPTIONPANE
2) showInputDialog
Exemplo :
String numLido = JOptionPane.showInputDialog( "Informe:" );
Note : Os métodos showInputDialog e showMessageDialog são static. 
Como chamar um método estático ... Regra :  classe.método 
LAYOUTS
A forma com que os componentes aparecem dispostos no painel é chamada layout.
Cada
container pode estar associado a um gerenciador de layout (Layout Manager).
Alguns  Layout  Managers :
o   FlowLayout - classe  no  pacote  java.awt    - default para JPanel
o   GridLayout - classe  no  pacote  java.awt 
o   BorderLayout - classe  no  pacote  java.awt    - default para JFrame
 
Para associar um LayoutManager a um Container deve-se utilizar o método     setLayout .
Nesta aula veremos apenas o FlowLayout.
Obrigado!

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando