A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Implementação Orientada a Objetos Prof. Rodrigo Rocha – UMC Prof

Apresentações semelhantes


Apresentação em tema: "Implementação Orientada a Objetos Prof. Rodrigo Rocha – UMC Prof"— Transcrição da apresentação:

1 Implementação Orientada a Objetos Prof. Rodrigo Rocha – UMC Prof
Implementação Orientada a Objetos Prof. Rodrigo Rocha – UMC Prof. Pedro Toledo - UMC

2 Ambiente de programação orientada a objetos
Conceitos de classe-objeto; Atributos, métodos; Herança; Conceitos de public, private protected; Encapsulamento; Relação generalização-especialização; Polimorfismo; Troca de mensagens entre objetos.

3 Bibliografia Pádua, W, P. F. “Engenharia de Software”. Fundamentos, métodos e padrões. Editora: LCT, 2001. Booch, G; Rumbaugh, J. ; Jacobson, I.” UML -Guia do usuário”. Editira Campus Cay S. ; Horstmann; Gary Cornell “ Core Java – Volume I – Fundamentals”. Sun Microsystems Press Deitel, H. M.; Deitel, P. J. “Java como programar”. Editora Bookman 2000.

4 Bibliografia (Continuação)
Coad, P, Yourdon, E, Análise baseada em objetos. Editora Campus – 1992. Coad, P, Yourdon, E, Projeto baseada em objetos. Editora Campus 1993. Coad, P. ; Nicola, J. Object-oriented Programming. Editora Yourdon Press

5 Ferramentas de trabalho
Documentação: UML (Rose, outros); Implementação: Linguagem java; ...

6 Avaliação Três provas – M1, ND e Prova interdisciplinar 30% da nota;
Datas: M1 (12 ou 19 de abril de 2013) ND (07 de junho de 2013) Trabalhos – totalizando 20% da nota; Oportunas

7 Paradigma Conceito: “Paradigma é um conjunto de regras que estabelecem fronteiras e descreve como resolver os problemas dentro destas fronteiras.” Os paradigmas influenciam nossa percepção; ajudam nos a organizar e a coordenar a maneira como olhamos para o mundo...

8 Orientação a Objetos Conceito: O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos; Linguagens que implementam OO. Smalltalk; Pascal, (DELPHI); C++, (BUIDER, VISUAL C++, BORLAND); Java.

9 O que são Objetos? Coisas tangíveis Eventos Transação Livro; Telefone.
Copa do mundo; Simpósio. Transação Um contrato; Um pedido de compra.

10 Porque muitas empresas não adotam OO?
Incerteza; falta de pessoas treinadas; Mas também OO não é a “bala de prata”; Sempre a última inovação tecnológica nos parece ser definitiva, vai resolver todos os nossos problemas !!!

11 A mudança do enfoque Foco no Sistema Foco na Classe

12 Objeto- outro conceito
Objetos são pacotes de software compostos de dados e procedimentos; Os procedimentos atuam sobre os dados; Os dados determinam o estado do objeto.

13 Objetos ­ Notação Procedimentos Dados

14 Exemplo de objeto Um carro: parar acelerar trocar a marcha buzinar
modelo marca ano trocar a marcha buzinar virar

15 Exemplo de objeto Um conta bancária: transferências Emitir extrato
depositar cliente número saldo limite Solicitar saldo sacar transferências

16 Exercício (10 minutos) Liste 3 métodos e 3 atributos para os seguintes objetos: Funcionário; Aluno; Pedido de um cliente;

17 Encapsulamento Conceito: Encapsulamento é definido como uma técnica para minimizar as interdependências entre “módulos'‘. Benefícios: Segurança: protege os atributos dos objetos de serem corrompidos por outros objetos; Independência: “escondendo'' seus atributos e métodos.

18 Troca de mensagens Objetos interagem e comunicam se através de mensagens... Emissor Receptor

19 Mensagens e métodos As mensagens identificam os métodos a serem executados no objeto receptor. Para invocar um método de um objeto, deve-se enviar uma mensagem. Para enviar uma mensagem é necessário: identificar o objeto que receberá a mensagem; identificar o método que o objeto deve executar; passar os argumentos requeridos pelo método.

20 Exemplo de troca de mensagens
Obter preço preço Produto Calcular Total Pedido

21 Métodos ou operações Conceito: É a implementação de um serviço prestado pelo objeto para a comunidade de objetos ou a si mesmo. Tipos de Métodos: métodos de acesso; métodos gerais.

22 Métodos - Exemplos Objeto: Fita de vídeo. Métodos de acesso
situação da fita, nome do filme, preço de aluguel. Métodos gerais cadastramento, empréstimo, exclusão.

23 Classe Uma classe é a abstração de um conjunto de objetos com características semelhantes. Uma classe define o comportamento de seus objetos através de métodos e os estados possíveis destes objetos através de atributos. De forma geral uma classe descreve os serviços providos por seus objetos e quais informações eles podem armazenar.

24 Classe em Java [ palavra-chave ] ‘class’ NomeDaClasse ‘{‘
  // comportamentos e variáveis são declarados e descritos entre o ‘{‘ e o ‘}’ ‘}’ Sendo assim, para declarar uma classe, coloque a palavra class seguida de um identificador (NomeDaClasse) que será o nome da classe. O identificador pode ser qualquer palavra, exceto palavras reservada da linguagem. Por exemplo, class Conta introduz a declaração de uma nova classe onde Conta é o nome da classe. Dica: Por convenção, o nome de uma classe inicia sempre com uma letra maiúscula. A palavra-chave é opcional e pode ser qualquer uma das seguintes: ‘public’, ‘abstract’, ‘public abstract’ ou  ‘final’.

25 Classe em Java (Continuação)
[ palavra-chave ] ‘class’ NomeDaClasse ‘{‘   // comportamentos e variáveis são declarados e descritos entre o ‘{‘ e o ‘}’ ‘}’ Utilize a palavra-chave ‘public’ para criar um nome de classe que possa ser utilizado em qualquer outra classe de qualquer programa ou pacote. Colocando public na frente de uma declaração de classe, essa só poderá ser utilizada dentro do código de programa ou pacote atual. É importante salientar que pode se declarar mais de uma classe por arquivo, porém, somente uma delas poderá ser public (pública). Assim, o nome do arquivo do código-fonte deverá ser o mesmo da classe pública.

26 Classe em Java (Continuação)
Exemplo: public class ClasseExemplo { } No exemplo, o nome do arquivo onde ClasseExemplo foi definida deve se chamar ClasseExemplo. Declarar essa classe (pública) em outro arquivo não é permitido e irá gerar um erro de compilação. Java considera diferentes letras maiúsculas e minúsculas. Assim, o nome da classe e o nome do arquivo devem ser exatamente iguais. Isso significa que o nome do arquivo deve ser escrito com o ‘C’ maiúsculo (de Classe) e ‘E’ maiúsculo (de Exemplo). As demais letras devem ser minúsculas.

27 Classe em Java (Continuação)
Exemplo: public class ClasseExemplo { } Utilize a palavra-chave ‘abstract’ para indicar que a classe corresponde a uma classe abstrata. Classes abstratas não podem ser utilizadas para a criação de objetos. Elas só servem como “classes-pai”, para que “classes-filhas” sejam criadas a partir delas. Cada classe possui um “corpo” onde você declara os comportamentos (métodos) e variáveis de estado (atributos ou campos). O corpo começa com o caractere ‘ { ‘ e termina com o caractere ‘ } ’.

28 Criando Objetos Um objeto é uma instância de uma classe. Para criar um objeto, utilize a seguinte sintaxe: ‘new’ construtor O comando new também conhecido como operador de criação, cria um novo objeto, alocando memória para o objeto e inicializando essa memória para valores default. O comando new necessita de um operando: o construtor, que é o nome de um método especial que constrói o objeto da seguinte forma: Pessoa umaPessoaQualquer = new Pessoa();

29 Criando Objetos class Pessoa{ }
Uma vez construído, o objeto deve ser atribuído a uma variável, para que possa ser utilizado e referenciado no futuro. Preste atenção ao exemplo seguinte: class Pessoa{ } class ProgramaExemplo{ public static void main(Strings parametros[]){ Pessoa umaPessoaQualquer; // declara uma variável que pode armazenar objetos do tipo Pessoa (definido na classe anterior) umaPessoaQualquer = new Pessoa(); // cria uma nova pessoa e coloca-a na variável umaPessoaQualquer        }   }      Nesse exemplo foi definida uma classe chamada Pessoa e após, no programa principal, foi criada uma variável chamada umaPessoaQualquer para receber um objeto do tipo pessoa (note que o tipo da variável é Pessoa, pois a variável é declarada de forma similar à declaração de variáveis do tipo int qualquer outro tipo natural da linguagem). Após, um novo objeto do tipo Pessoa é criado, através do comando new Pessoa(). Esse objeto é colocado na variável  umaPessoaQualquer através do comando de atribuição (sinal de igual).

30 Classe Aluno Aluno - media: double nota1: double nota2: double +
calcularMedia() : void imprimir() : void

31 Código da classe Aluno public class Aluno { private double media;
private double nota1; private double nota2; //Construtor public Aluno() { media = 0; } //Métodos de acesso public double getMedia() { return media; public void setMedia(double media) { this.media = media; public double getNota1() { return nota1; public void setNota1(double nota1) { this.nota1 = nota1; public double getNota2() { return nota2; public void setNota2(double nota2) { this.nota2 = nota2; public void calcularMedia() { media = (nota1 + 2 * nota2) / 3; } public void imprimir() { System.out.println("Nota1 " + nota1); System.out.println("Nota2 " + nota2); System.out.println("Media " + media); public static void main(String args[]) { Aluno aluno; aluno = new Aluno(); aluno.setNota1(new Float(args[0]).floatValue()); aluno.setNota2(new Float(args[1]).floatValue()); aluno.calcularMedia(); aluno.imprimir();

32 Java Declara uma classe chamada Carro
public class Carro { private String modelo; public Carro(String aModelo){ modelo = aModelo; } public String getModelo() { return modelo; public void setModelo(String modelo) { this.modelo = modelo; public String toString(){ return "Modelo: " + modelo; public static void main(String arg[]){ Carro carro = new Carro(arg[0]); System.out.println(carro.toString()); Que tem um atributo modelo do tipo String Possui um construtor parametrizado Possui quatro métodos

33 Java public class Carro { private String modelo; public Carro(String aModelo){ modelo = aModelo; } public String getModelo() { return modelo; public void setModelo(String modelo) { this.modelo = modelo; public String toString(){ return "Modelo: " + modelo; public static void main(String arg[]){ Carro carro = new Carro(arg[0]); System.out.println(carro.toString()); Todo programa Java é executado por um programa chamado "java.exe". A primeira coisa que ele faz é procurar na classe que você passou como parâmetro, um método chamado "main" , que seja público , e que ele não precise instanciar um objeto da classe para chamar - é por isso que ele tem de ser static. Outra coisa que o programa faz é passar os argumentos da linha de comando para essa classe, nessa variável "args". Ou seja: java Carro Siena ele chama o método "public static main" da classe Carro e preenche a variável args com o seguinte valor: args[0] = “Siena"

34 Java public class Carro { private String modelo; public Carro(String aModelo){ modelo = aModelo; } public String getModelo() { return modelo; public void setModelo(String modelo) { this.modelo = modelo; public String toString(){ return "Modelo: " + modelo; public static void main(String arg[]){ Carro carro = new Carro(arg[0]); System.out.println(carro.toString()); carro.toString() é uma instância da classe de cadeia de caracteres String. println é um método que imprime a String retornada pelo método toString() println é um método da subclasse PrintStream denominada out na classe String. Este método escreve na tela a cadeia de caracteres que lhe é passada como parâmetro e faz uma quebra de linha (faz com que a próxima escrita na tela seja na próxima linha).


Carregar ppt "Implementação Orientada a Objetos Prof. Rodrigo Rocha – UMC Prof"

Apresentações semelhantes


Anúncios Google