programação para dispositivos móveiscodilon.qlix.com.br/jd/jdaula03.pdf · fundamentos java e...
TRANSCRIPT
![Page 1: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/1.jpg)
Programação para Dispositivos Móveis
J2ME – Fundamentos da Linguagem Java
Prof. Milton Escóssia
![Page 2: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/2.jpg)
Introdução O desenvolvimento de aplicações Java ME
envolve conceitos como:– Orientação a objetos– Java Code Convention– Java Bean– Construção de interface gráfica– Comunicação via rede sem fio– etc.
![Page 3: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/3.jpg)
Programa x Classe● Programa :
● Visão estrutura do mundo> variáveis e funções genéricas.
● Classe:● Visão OO do mundo● Descreve conceitos, agrupamento de coisas
similares do mundo real; > atributos e métodos
![Page 4: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/4.jpg)
Programa x Classe
Variáveis Globais
Funções ( )
Atributos
Métodos ( )
Programa Classe
Visão Estruturada Visão Orientação a Objetos
![Page 5: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/5.jpg)
Classe x Objeto● Classe:
● descreve coisas do mundo real através de:> atributos (características)> métodos (operações, ações)
● Objeto:● são coisas do mundo real; ● É a materialização de uma classe;● mesmo que instância de uma classe.
![Page 6: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/6.jpg)
Classe x Objeto● Imagine a seguinte situação:
● Pedimos a um engenheiro projetar um casa;● Sabemos que a nossa casa terá algumas
características como: - número, - cor, - nome do engenheiro, - quantidade de quartos;
● Na nossa casa nós podemos: abrir porta, ascender a luz;
![Page 7: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/7.jpg)
Classe x Objeto
![Page 8: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/8.jpg)
Classe x Objeto●Instanciação
● Se refere a materialização de uma classe.● Uso do comando new para criar um objeto de
uma classe.
● Exemplo:● Rapaz uma pessoa jogou muito bem no domingo;
> Que pessoa ? O Ronaldinho Gaúcho.● Quando falamos de pessoa temos apenas a ideia
de um jogador agora quando falamos que foi o Ronaldinho Gaúcho o que vem em nossa cabeça ?
![Page 9: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/9.jpg)
Classe x Objeto● Instanciação
![Page 10: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/10.jpg)
Classe x Objeto● Instanciação
![Page 11: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/11.jpg)
Classe x Objeto● Instanciação
![Page 12: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/12.jpg)
Fundamentos Java e Orientação a Objetos● Tipos de primitivos do JAVA :
- boolean : 1 Bit;- char : 1 Byte (8 bits);- byte : 1 Byte (8 bits);- short : 2 Bytes (16 bits);
- int (Inteiro) : 4Bytes (32 bits);- long : 8 Bytes (64 bits);- float : 4 Bytes (32 bits);- double : 8 Bytes (64 Bits).
![Page 13: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/13.jpg)
Fundamentos Java e Orientação a Objetos● Palavras reservadas da linguagem:
![Page 14: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/14.jpg)
Fundamentos Java e Orientação a Objetos
Java Code Convention> Conjunto de regras de boas práticas da SUN para nomenclatura
de identificadores.> Não gera erro de compilação.
Regras do Java Code Conventioni) classes e interfaces
> Pessoa, Veiculo, MinhaClasse, MinhaInterface
ii) atributos, métodos, variáveis e parâmetros> valor, numero, minhaVariavel, salarioBruto, nomeDaVariavel
iii) constantes> PI, MINHA_CONSTANTE, VALOR_DO_DOLAR
![Page 15: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/15.jpg)
Regras de Nomenclatura de Identificadores
Identificador> Nome dado a classes, interfaces, atributos, métodos, constantes,
variáveis e parâmetros.
Regras de Nomenclatura1. Deve iniciar com $, ou _ (sublinhado), ou Letra (A-Z, a-z)2. Os demais caracteres do nome pode conter a combinação de :
$, ou _ (sublinhado), ou Letra (A-Z, a-z),ou números (0-9)3. Não pode conter caracteres especiais tais como:
> espaço em branco, @, #, -, +, =, etc.4. Não pode ser igual a palavra-chave ou reservada da linguagem:
> int, class, public, void, etc.
AtençãoA não obediência a essas regras gera erro de compilação!
![Page 16: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/16.jpg)
Estilo de Codificação Java
Java Code Convention> Conjunto de regras de boas práticas da SUN para nomenclatura
de identificadores.> Não gera erro de compilação.
Regras do Java Code Conventioni) classes e interfaces
> Pessoa, Veiculo, MinhaClasse, MinhaInterface
ii) atributos, métodos, variáveis e parâmetros> valor, numero, minhaVariavel, salarioBruto, nomeDaVariavel
iii) constantes> PI, MINHA_CONSTANTE, VALOR_DO_DOLAR
![Page 17: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/17.jpg)
Unidade base do Java
Java Bean> Se refere a uma classe componente do java.> Utilizado para padronizar a estrutura e nomenclatura dos elementos que compõe uma classe JavaBean.
Regras do Java Beani) Encapsulamento
> atributos devem ter visibilidade private
ii) Construtor> deve ter no mínimo um construtor vazio
iii) Propriedade> Combinação de métodos GETTERS e SETTERS para permitir o acesso controlado aos valores dos atributos de um objeto.
![Page 18: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/18.jpg)
Java Bean
getter
setter
![Page 19: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/19.jpg)
Membros de Instância
Membros de instância
![Page 20: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/20.jpg)
Membros de Instância
Classe
Objeto
Instância (“new”)
Instância (“new”)
Instância (“new”)
![Page 21: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/21.jpg)
Membros de Classe
Membros de instância
Membro estático
![Page 22: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/22.jpg)
Membros de Classe
Classe
Objeto
Instância (“new”)
Instância (“new”)
Instância (“new”)
![Page 23: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/23.jpg)
Método Construtor
Construtor
![Page 24: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/24.jpg)
Sobrecarga de métodos
Sobrecarga
![Page 25: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/25.jpg)
Herança● Mecanismo da OO que permite que uma classe use
recursos (atributos e métodos) de outra classe.● Estabelece uma relação hierarquica entre as classes.● Java suporta somente Herança simples entre classes e
Herança múltipla de interfaces.
Pai
FilhaUm FilhaDois
Neta
![Page 26: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/26.jpg)
Herança Na herança, todo Gerente é um Funcionario, pois é uma extensão deste. Se alguém precisa falar com um Funcionario do banco, pode falarcom um Gerente! Porque? Pois Gerente é um Funcionario. Essa é a semântica da herança.
Super Tipo Classe pai
Sub Tipo Classe filha
Generalização
Especialização
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 7
![Page 27: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/27.jpg)
Herança
É umPode ser um
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 7
![Page 28: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/28.jpg)
Classe Abstrata● É uma tipo de classe que serve de molde para outras classes;● Não pode ser instanciada;
● Usa-se a palavra chave abstract para qualificá-la como uma classe abstrata, impedindo de ser instanciada.● Uma classe abstrata pode-se declarar métodos abstratos que determinam que o método será sempre sobrescrito nas classes filhas.
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
![Page 29: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/29.jpg)
Classe Abstrata
As classes filhas que podem ser instanciadas são chamadas de classes concretas. Elas devem reescrever o método abstrato ou não compilarão.
Uma classe abstrata não precisa necessariamente ter um método abstrato.
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
![Page 30: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/30.jpg)
Classe Abstrata
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
Classe Abstrata
Classe Concreta
![Page 31: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/31.jpg)
Classe Abstrata
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
![Page 32: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/32.jpg)
Classe Abstrata
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
![Page 33: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/33.jpg)
Classe Abstratacom métodos abstratos
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
Classe Abstrata
Classe Concreta
![Page 34: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/34.jpg)
Classe Abstratacom métodos abstratos
Fonte: Apostila Caelum, FJ-11 – Java e Orientação a objetos, cap- 9
![Page 35: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/35.jpg)
Interface● Se refere a um fator comum (serviço, operação, método) a
várias classes;
● Atua como um contrato através da implementação de um serviço comum a várias classes independentes entre elas;
● É uma forma que permite garantir que determinadas classes tenham a existência de um determinado método, através de um contrato.
- um “contrato” define tudo o que uma classe deve fazer se quiser ter um determinado status.
- uma interface atua como um contrato onde quem assina se responsabiliza por implementar seus métodos (para cumprir o contrato).
![Page 36: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/36.jpg)
InterfaceComo permitir que as classes abaixo tenham um método comum de autenticação ?
A implementação de uma interface permite estabelecer um elo comum entre classes distintas.
Lê-se a interface “Autenticável” da seguinte forma: “quem desejar ser autenticável precisa saber autenticar dado um inteiro e retornando um booleano”.
![Page 37: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/37.jpg)
Interface
![Page 38: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/38.jpg)
Interface – Representação com UML
![Page 39: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/39.jpg)
Interface
implementa
![Page 40: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/40.jpg)
Interface
![Page 41: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/41.jpg)
Interface
![Page 42: Programação para Dispositivos Móveiscodilon.qlix.com.br/jd/jdaula03.pdf · Fundamentos Java e Orientação a Objetos Java Code Convention > Conjunto de regras de boas práticas](https://reader033.vdocuments.mx/reader033/viewer/2022060518/604c1787133a966b2f3e7e26/html5/thumbnails/42.jpg)
Interface