Organização do Ambiente de Execução para Linguagens OO Objeto: –Grupo de variáveis de instância, aos quais métodos de instância estão atachados; Variável.

Slides:



Advertisements
Apresentações semelhantes
Classes e Funções.
Advertisements

|Introdução a Java para programadores Telis. Jogo de Dados simples O jogo é jogado por dois jogadores. Cada jogador faz sua jogada (lança um dado), e.
Java Web Sessão 1 Introdução a Java Prof. Luís Eduardo tecnoclasta.com.
Programação orientada a objetos
Paulo Marques Hernâni Pedroso
Classes C++ Class nome da classe { private: membros privados
Herança, sobrecarga e ligação dinâmica zHerança zReferência super zSobrecarga de métodos zSobreposição zLigação dinâmica de métodos zfinal.
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Generalização, Especialização e Conceitos
Orientação a Objetos Introdução. Objetos: o que são? Olhando o mundo real pode-se ver vários objetos: mesa, cadeiras, alunos, professores etc. Esses objetos.
Laboratório de Java Herança e Agregação (Lab II) Prof. Guido Araújo.
Programação Básica em Java
INF Computação Gráfica
Expressões, controle de fluxo, wrappers e strings Profa
Ponteiros em C.
Wagner Santos C. de Jesus
Orientação a Objetos Classes
8 Sistemas de Tipos Polimorfismo de inclusão.
Ponteiros.
A linguagem C#.
Classes e objetos P. O. O. Prof. Grace.
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
CRIANDO OBJETOS EM JAVA
Funções Declaração function nomedafunção (arg_1, arg_2,..., arg_n) corpoDaFunção end.
JAVA Orientação a Objetos
Conceitos de Linguagem de Programação
Caio Argolo Luiz Daud Jorge Roberto
Interfaces.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Atributos, Encapsulamento e Interface em Java
Métodos de Construção de Software: Orientação a Objetos
Classes, Objetos, Atributos e Métodos JAVA
Paulo Borba Centro de Informática Universidade Federal de Pernambuco Classes Abstratas e Interfaces.
Compilação de Linguagens OO Marco Simões (macs3) André Santos (alms)
Orientação a Objetos e Java Graduação em Ciência da Computação
Professora Lucélia Oliveira
Paulo Borba Centro de Informática Universidade Federal de Pernambuco
LEONARDO SIMAS JUSSI BARROS WESLLEY VIEIRA Flyweight.
Wagner Santos C. de Jesus
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng
Orientação a Objetos usando Java
Java Kickstart, day 2 Semelhanças com linguagem C.
Classes Abstratas P. O. O. Prof. Ângela e Grace.
Aula Prática 4 Monitoria IP/CC (~if669).
Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes
Polimorfismo.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota (com material da Qualiti Software Process)
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Herança e Arquitetura em camadas
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Clique para editar o estilo do subtítulo mestre POO Utilizando PHP5 Prof. André Rabelo.
Bruno Inojosa MCP .NET Framework
Factory.
Atributos e Métodos Estáticos
Modificadores Programação II.
Introdução a Orientação a Objetos
Conceitos de OO em Java Parte I
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Relacionamentos UML e Polimorfismo
Associação. 2 Desafio – Aula class Aluno { 2. private String nome; 3. private float nota; 4. public Aluno(String nome, float nota){ 5. this.nome.
Paradigmas da Programação – Semestre 1 – Aula 7 Professor: Eduardo Mantovani )
Implementação Orientada a Objetos – Aula 08 Herança, sobrescrita de métodos e polimorfismo Prof. Danielle Martin Universidade de Mogi das Cruzes
Aula 11 Orientação a Objeto (OO)
Implementação Orientada a Objetos – Aula 04 Métodos, parâmetros e retorno Prof. Danielle Martin/Marcia Bissaco Universidade de Mogi das Cruzes
IDENTIFICAÇÃO DOS RELACIONAMENTOS Nesta atividade devem ser definidos os relacionamentos entre as classes Podem ser representados pela: – associação, –
PROGRAMAÇÃO ORIENTADA A OBJETOS EM C++ PAE: Pedro Shiguihara Professor: Dilvan Moreira.
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Compilação de Linguagens OO
Ambiente de execução.
Transcrição da apresentação:

Organização do Ambiente de Execução para Linguagens OO Objeto: –Grupo de variáveis de instância, aos quais métodos de instância estão atachados; Variável de Instância: –Componente de um objeto particular; Método de Instância: –Operação nomeada, ligada a um objeto particular que acessa suas variáveis de instância locais; Classe de Objetos: –Família de objetos com variáveis de instância similares e métodos idênticos;

Organização do Ambiente de Execução para Linguagens OO Linguagens OO puras: –Todas as variáveis de instâncias são privadas; –Somente métodos podem acessá-las; –Na prática: existências de variáveis públicas; Chamada de método de instância: –E 0.I(E 1,..., E n ); E 0 : objeto receptor; I: método de instância do objeto; E 1,..., E n : argumentos;

Organização do Ambiente de Execução para Linguagens OO Class Point { protected int x, y; public Point(int x, int y) { this.x = x; this.y = y; } public void move(int dx, int dy){ this += dx; this +=dy; } public float area(){ return 0.0; } public float dist(Point that) { int dx = this.x – that.x; int dy = this.y – that.y; return Math.sqrt(dx*dx + dy*dy) } }

Organização do Ambiente de Execução para Linguagens OO Point move area dist Classe de Objeto Point constructor (1) method (2) method (3) method (4)

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Point Objeto Point

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Point Point p = new Point(2,3) Point q = new Point(0,0) p.move(1,1) class tag x y p q

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Point q = p class tag x y p q LIXO

Organização do Ambiente de Execução para Linguagens OO Chamada a E 0.I(E 1,..., E n ) –Endereço do método é encontrado seguindo-se o ponteiro da classe de objeto (class-tag) e usando o deslocamento apropriado; –Traduzido para I(E 0, E 1,..., E n ); O objeto é passado como argumento para a chamada do método, sendo associado ao nome this; E 0.I(this, a 1,..., a n );

Organização do Ambiente de Execução para Linguagens OO Sub-classes: –Seja C uma classe de objetos; –Uma sub-classe S da classe C é uma família de objetos similares aos objetos de C, porém com: Variáveis de instância extra; Métodos adicionais; Métodos substituídos. –Objetos S podem ser tratados como objetos C; Ignorando suas variáveis e métodos particulares; Porém, considerando seus métodos substituídos; –Herança simples;

Organização do Ambiente de Execução para Linguagens OO Class Circle extends Point { protected int r; public Circle(int x, int y, int r) { this.x = x; this.y = y; this.r = r; } public void radius(){ return this.r; } public double area(){ double pi = ; return pi * this.r * this.r; } }

Organização do Ambiente de Execução para Linguagens OO Class Box extends Point { protected int w, d; public Box(int x, int y, int w, int d) { this.x = x; this.y = y; this.w = w; this.d = d; } public void width(){ return this.w; } public void depth(){ return this.d; } public double area(){ return (double) (this.w * this.d); } }

Organização do Ambiente de Execução para Linguagens OO Circle move area dist Classe de Objeto Circle constructor (5) method (2) method (7) method (4) method (6) radius

Organização do Ambiente de Execução para Linguagens OO Box move area dist Classe de Objeto Box constructor (8) method (2) method (11) method (4) method (9) width depth method (10)

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Circle Objeto Circle r

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Box Objeto Box w d

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Circle int s = 4; Point p = null; Circle c = new Circle(0, 3*s, s); Box b = new Box(0,s,2*s,2*s); class tag x y p c r w d b Classe de Objeto Box

Organização do Ambiente de Execução para Linguagens OO class tag x y Classe de Objeto Circle p = c p.move(20,20) class tag x y p c r w d b Classe de Objeto Box