Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Aula 1
Um paradigma de programao fornece e determina a viso que o programador possui sobre a estruturao e execuo do programa Conjunto de comandos e regras que um computador deve conhecer para poder manipular os recursos de um computador. So escritos usando uma L.P. O paradigma de POO considera que os dados a serem processados e os mecanismos de processamento destes dados deve ser considerados em conjunto.
Introduo
Modelos so representaes simplificadas de objetos, pessoas, itens, tarefas, processos, conceitos, ideias etc. Usados comumente por pessoas no seu dia a dia, independente do uso de computadores.
O quadro-branco um modelo do restaurante, representado de forma simplificada as informaes do restaurante que so necessrias para a contabilizao. O modelo apenas uma simplificao do mundo real, os dados contidos no modelo so somente relevante abstrao do mundo real sendo feita.
Modelo
Biblioteca de operaes
Modelos
Pessoa como empregado de empresa; Pessoa como paciente de uma clinica; Pessoa como contato comercial;
O que POO
POO um paradigma de programao de computadores onde se usam classes e objetos, criados a partir dos modelos descritos anteriormente, para representar e processar dados usando programas de computadores; Dados podem ser representados por dados nativos Dados podem ser representados por outros Modelos
Encapsulamento
Em alguns casos ser necessrios que os dados no sejam acessados diretamente; Abstrao mecanismos de ocultao de dados;
Exemplo da cmera;
A capacidade de ocultar dados dentro de modelos, permitindo que somente operaes especializadas ou dedicadas manipulem os dados ocultos chama-se encapsulamento.
Exemplo de modelos
Lmpada Incandescente
Exemplo do modelo; Modelo em pseudocdigo; Exemplo do modelo; Modelo em pseudocdigo; Exemplo do modelo; Modelo em pseudocdigo;
Uma data
Exemplo de Modelos
Registro Acadmico
Classes so estruturas das linguagens OO para conter, para determinado modelo, os dados que devem ser representados e as operaes que devem ser efetuadas com estes dados. Objeto ou instncia uma materializao da classe; Referncias so variveis do tipo da classe;
OO
As operaes so os mtodos
OO necessria?
Depende do tipo de problema Qualquer aplicao onde seja necessria representar conjuntos de dados dependentes ou interligados entre si
Exerccios 1
Exerccio
Seguir a conveno de codificao proposta pela Sun (http://www.oracle.com/technetwork/java/codec onv-138413.html) Classe sempre declarada com a palavra chave class;
Valores lgicos
Valores inteiros
A classe String
Comear com minsculo (por conveno); Referncia de classe, inicializar com a palavrachave new;
Mtodos
Os nomes dos mtodos seguem as mesmas regras de nomes de campos; Deve ter um tipo ou classe de retorno;
Escopo
O escopo determina a visibilidade dos atributos e mtodos; Escopos de campos em uma classe;
ex.: Triangulo
Modificadores de Acesso
Por padro todos os atributos devem ser private ou protected; Mtodos acessveis devem ser public (ou padro)
Ponto de entrada
Exemplos
A palavra-chave null
Exemplo DemoReferencias
Construtores
Construtores so mtodos especiais, que so chamados automaticamente quando instncias so criadas atravs da palavra-chave new; So teis para inicializar campos; Dever ter o mesmo nome da classe; No retorna valores; No devem receber modificadores de acesso como public ou private, e sero pblicos se a classe for pblica;
Caso os campos de uma instncia no sejam inicializados, os seguintes valores sero adotados:
boolean = false; char = ' '; byte, shor, long, int, float e double = 0; Instncias de qualquer classe sero null.
Construtores
Ver exemplo.
EventoAcademico DemoEventoAcademico
Sobrecarga de mtodos
A palavra-chave this
Somente construtores podem chamar construtores como sub-rotinas; A chama de um construtor dentro de outro deve ser a primeira linha do cdigo dentro do corpo do construtor; Construtores no so chamados pelos seus nomes, e sim por this; Construtores podem chamar outros mtodos; Construtores no podem ser chamados recursivamente;
Alguns tipos de dados podem ser promovidos (um valor do tipo byte pode ser aceito por um mtodo que espere um valor do tipo int); O mesmo no ocorre em casos em que um mtodo ou construtor espere um certo de tipo de dados e a chamada ao mtodo contenha, como argumento, um tipo de dados que no pode ser contido no esperado.