Orientação a Objetos em Java. LPGII - Java. Orientação a Objetos em Java. Definição de classes. Membros de Classe

Tamanho: px
Começar a partir da página:

Download "Orientação a Objetos em Java. LPGII - Java. Orientação a Objetos em Java. Definição de classes. Membros de Classe"

Transcrição

1 Orientação a Objetos em Java LPGII - Java Orientação a Objetos em Java Roberto Vedoato vedoato@joinville.udesc.br Definição de classes Criação de objetos Herança Polimorfismo Ligação Dinâmica Uso de Bibliotecas (packages) Compatibilidade entre classes (casting) Operador instance of Modificadores: final, static e abstract Interfaces Orientação a Objetos em Java 2 Definição de classes Classe é o único meio de criar novos tipos de dados Formato geral de classe: class nome { // declaração de atributos (campos do objeto) //definição de métodos (funções/comportamento) Membros de Classe Variáveis de instância definem a estrutura dos objetos derivados da classe podem ser de tipo ples ou derivado de outra classe Variáveis de classe (static) compartilhada por todos os objetos da classe são alocadas quando a classe é carregada Constantes (final) Métodos funções/procedimentos que implementam o comportamento dos objetos da classe; Construtor método especial para criar objetos; Orientação a Objetos em Java 3 Orientação a Objetos em Java 4

2 Exemplo Modificadores de Acesso class Circulo { float xpos, ypos, raio; // variáveis de instância static int numcirc; // variável de classe void deforigem (float x, float y) // métodos { xpos = x; ypos = y ; void defraio ( float r) { raio = r ; float calcarea ( ) { return * raio * raio ; membros de classe podem ter restrição de acesso private, protected, public estabelecida por atributos de visibilidade public - sem restrições acessível em qualquer classe protected acessível na própria classe e nas classes filhas private acessível apenas na própria classe classes devem ser declaradas public ou protected Orientação a Objetos em Java 5 Orientação a Objetos em Java 6 Exemplo Criação de Objetos class Circulo { private float xpos, ypos, raio; // variáveis de instância public void deforigem (float x, float y) // métodos { xpos = x; ypos = y ; public void defraio ( float r) { raio = r ; public float calcarea ( ) { return * raio * raio ; Objetos são instâncias de classe, alocados dinamicamente Saõ criados através do operador new que chama o construtor da classe Construtor aloca espaço de memória para objeto Variáveis do tipo classe são ponteiros para objetos da classe Exemplo class Circulo { ; // declara classe Circulo circ ; // declara variável do tipo da classe circ = new Circulo( ); // cria objeto circ.deforigem (1.5, 2.0); // envia mensagem Orientação a Objetos em Java 7 Orientação a Objetos em Java 8

3 Construtores Servem para criar e iniciar novos objetos Construtor aloca memória (e inicia), não retorna valor Valores para iniciar são passados como parâmetros Uma classe pode ter um ou mais construtores de objetos São declarados com o mesmo nome da classe Construtores devem ser definidos como public Caso não haja um construtor explícito Java executa o construtor pai por padrão Orientação a Objetos em Java 9 Exemplo class Circulo { // atributos de instância private float xpos,ypos,raio; // construtores public Circulo ( ) { xpos = 0; ypos = 0; radius = 0 ; public Circulo (float x, float y, float r) {xpos = x; ypos = y; radius = r ; // método public float calcarea ( ) { return * raio * raio ; Orientação a Objetos em Java 10 Exercício Sobrecarga de Construtor Herança Considere a classe abaixo, teste a criação de objetos com os três construtores, imprima na tela os valores dos atributos e explique os resultados class Exemplo04 { int x, y; public Exemplo04(int num1) { x = num1; y = num1 * 2; public Exemplo04(int num1, num2) { x = num1; y = num2; public static void main (String args[ ]) { Exemplo04 obj1 = new Exemplo04(); System.out.println( x = + obj1.x); System.out.println( y = + obj1.y); Exemplo04 obj2 = new Exemplo04(2); System.out.println( x = + obj2.x); System.out.println( y = + obj2.y); Exemplo04 obj3 = new Exemplo04(2,5); System.out.println( x = + obj2.x); System.out.println( y = + obj2.y); Orientação a Objetos em Java 11 Java implementa herança ples Object é a classe raiz de todas as classes, fornece o comportamento básico de todas as classes Todas as classes do usuário são obtidas por especialização de classes do ambiente Java Subclasse herda os componentes da superclasse pode adicionar novos componentes; não pode remover definições da superclasse pode redefinir métodos Object classes de biblioteca classes de usuário Orientação a Objetos em Java 12

4 Definição de Subclasses Redefinindo Métodos Superclasse deve ser indicada na declaração da classe Exemplo: class Frame extends Window {... public class Square { double lado; public double area ( ) Square Superclasse omitida na declaração da classe significa que a classe é subclasse direta de Object Exemplo: class Circulo {... { return lado*lado ; lado area() Método redefinido em subclasse redeclaração esconde componente herdado super traz o componente herdado de volta ao escopo public class Rectangle extends Square { double altura; public double area ( ) { return lado*altura ; Rectangle altura area() Orientação a Objetos em Java 13 Orientação a Objetos em Java 14 Chamada a Métodos Chamada a Métodos da Superclasse chamada de método (envio de mensagem) <nome_objeto>. <nome_método> ( <params> ) Quando método é prefixado com super, a procura inicia na superclasse imediata à classe que contém o método Exemplo de chamada a método de instância: class Janela extends Frame {... // define classe Janela tela1 = new Janela( ); // declara e cria objeto tela1.show( ); // envia mensagem class Janela extends Frame { void paint( ); {... super.paint( );... Frame paint() Janela paint() Orientação a Objetos em Java 15 Orientação a Objetos em Java 16

5 Chamada a Métodos da Superclasse Dentro de um método, this identifica o próprio objeto para o qual a mensagem foi enviada class Cilindro { float xpos, ypos, raio, altura; public float calcarea ( ) { return * raio * raio ; public float calcvolume ( ) { return this.calcarea() * altura ; Sobrecarga class Base { int i = 1; String teste() { return "Base"; class Derivada extends Base { int i = 2; String teste() { return "Derivada"; Base int i=1; String teste() Derivada int i=2; String teste() Orientação a Objetos em Java 17 Orientação a Objetos em Java 18 Exercício Encadeamento de Construtores Crie a aplicação TesteHerança. Quais serão os resultados? class TesteHeranca { public static void main (String arg[]) { Base base = new Base(); Derivada derivada = new Derivada(); Base basederivada = new Derivada(); int x = base.i; int y = derivada.i; int z = basederivada.i; String xfun = base.teste(); String yfun = derivada.teste(); String zfun = basederivada.teste(); System.out.println("Teste de Herança"); System.out.println( Atributos = "+x+" - "+y+" - "+z); System.out.println("Metodos = "+xfun+" - "+yfun+" - "+zfun); Teste de Herança Atributos = Metodos = Base - Derivada - Derivada Orientação a Objetos em Java 19 Um construtor pode chamar outro construtor, isto se chama encadeamento de métodos construtores Caso não haja um construtor explícito Java prove um construtor padrão Primeiro comando de construtor é uma chamada a outro construtor da mesma classe por this ( ) da superclasse por super ( ) Construtor que não contém tal chamada, inclui implicitamente chamada super ( ) uma cadeia completa de construtores é chamada até a raiz Orientação a Objetos em Java 20

6 Exercício class SuperClasse { SuperClasse() { System.out.println("Construtor SuperClasse"); void teste() { System.out.println("Metodo SuperClasse"); class SubClasse extends SuperClasse { SubClasse() { System.out.println("Construtor SubClasse"); Exercício Crie a aplicação TesteHerança2. Qual é o resultado? class TesteHeranca2 { public static void main (String arg[]) { System.out.println( Teste de Heranca 2 ); Subclasse sub = new Subclasse(); sub.teste(); void teste() { System.out.println("Metodo SubClasse"); Orientação a Objetos em Java 21 Orientação a Objetos em Java 22 Curiosidades sobre Construção de Objetos Seqüência de execução na chamada de um construtor 1. Inicialização default de campos de dados (0, null, false) 2. Chamada recursiva ao construtor da superclasse (até Object) 2.1 Inicialização default dos campos de dados da superclasse (recursivo, subindo a hierarquia) 2.2 Inicialização explicita dos campos de dados 2.3 Execução do conteúdo do construtor (a partir de Object, descendo a hierarquia) 3. Inicialização explícita dos campos de dados 4. Execução do conteúdo do construtor Orientação a Objetos em Java 23 Curiosidades sobre Construção de Objetos Evite chamar métodos locais dentro de construtores Construtor (qualquer um da hierarquia) sempre usa versão sobreposta do método Isto pode trazer resultados inesperados se alguém estender a sua classe com uma nova implementação do método que Dependa de variáveis da classe estendida Chame métodos em objetos que ainda serão criados (provoca NullPointerException) Dependa de outros métodos sobrepostos Use apenas métodos finais em construtores Métodos declarados com modificador final não podem ser sobrepostos em subclasses Orientação a Objetos em Java 24

7 Destruição de Objetos Curiosidades sobre Destruição de Objetos Java desaloca objetos através do garbage collector Referência a objeto pode ser removida atribuindo a null memória alocada para objeto não é liberada de imediato Garbage colletor executa em baixa prioridade Desejando-se realizar outras ações associadas à destruição de objetos (exemplo: fechar arquivos): método finalize finalize chamado pelo garbage collector antes do objeto ser destruído void finalize ( ) {... Objetos são destruídos automaticamente pelo garbage colector quando perdem sua referência, porém, o sistema garbage colector não faz finalização Método finalize(), herdado de Object, teoricamente permite ao programador controlar a finalização de qualquer objeto finalize() não funciona 95% das vezes - não use! Se precisar de finalização, coloque seu código em um bloco try {... finally {... Orientação a Objetos em Java 25 Orientação a Objetos em Java 26 O Uso de Bibliotecas Modificadores de Acesso As classes Java são agrupadas em pacotes O pacote padrão é: java.lang Classes que pertencem a outros pacotes devem ser importadas O comando import carrega arquivos.class Exemplos de importação import java.awt.rectangle; import java.awt.*; Orientação a Objetos em Java 27 Acesso dentro do package onde a classe foi declarada Modificador Herança (métodos) Acessível (atributos e métodos) default public protected private não não Acesso fora do package onde a classe foi declarada Modificador Herança (métodos) Acessível (atributos e métodos) default não não public protected private não não Orientação a Objetos em Java 28

8 Modificadores de Acesso - Exercício Compatibilidade de Classes Crie uma classe pai, ClassePai, com atributos (a,b) e métodos (alteraa, alterab), privados (a, alteraa) e públicos (b, alterab). Crie uma classe filha, ClasseFilha, que possua métodos para tentar: Ler o atributo a e o atributo b Alterar o atributo a e o atributo b Chamar o método alteraa e o método alterab Verifique se é verdadeira a afirmação de que métodos e atributos privados não são herdados. Observação: não utilize super um objeto pode ser atribuído a qualquer objeto da mesma classe ou de superclasse Figura f1, f2; f1 = new Figura(); f2 = f1 ; Retangulo r = new Retangulo (); f1 = r ; // é possível? r = f2; // é possível? Object Figura Retangulo RoundRet Elipse Orientação a Objetos em Java 29 Orientação a Objetos em Java 30 Compatibilidade de Classes - Exemplo Operador instanceof Retangulo ret = new Retangulo( ); Figura fig = new Figura ( ); Object obj = new Object ( ); RoundRet round = new RoundRet ( ); Elipse eli = new Elipse ( ); fig = eli; obj = round; ret = fig; // erro de compilação fig = new Retangulo( ); ret = (Retangulo) fig; // casting torna atribuição correta Object Figura Retangulo RoundRet Elipse Operador para investigar a classe de um objeto Resulta true se o objeto é da classe ou de subclasse <objeto> instanceof <classe> Exemplo: Figura[] fig = new Figura[3]; fig[0] = new Retangulo( ); fig[1] = new Elipse( ); fig[2] = new RoundRect( ); fig[0] instanceof Figura // retorna true fig[2] instanceof Retangulo //retorna true fig[1] instanceof Retangulo //retorna false Orientação a Objetos em Java 31 Orientação a Objetos em Java 32

9 Exercício 1. Escreva uma classe Ponto contém x e y que podem ser definidos em construtor métodos getx() e gety() que retornam x e y métodos setx(int) e sety(int) que mudam x e y 2. Escreva uma classe Circulo, que contenha raio inteiro e origem Ponto construtor que define origem e raio método que retorna a área método que retorna a circunferência use java.lang.math.pi (Math.PI) 3. Crie um segundo construtor para Circulo que aceite um raio do tipo int e coordenadas x e y Modificadores Modificadores funcionam como delimitadores de características Final Static Abstract Orientação a Objetos em Java 33 Orientação a Objetos em Java 34 Modificador Final Variáveis final são constantes, não podem ser modificadas Exemplo: final double PI = ; Métodos final não podem ser redefinidos nas subclasses Classes final não podem ser especializadas todos os métodos são considerados final Exemplo: final float Consulta(String num) {... Modificador Static Uma classe pode conter membros de classe (atributos e métodos), sendo compartilhados por todos os objetos daquela classe alocados quando a classe é carregada Podem ser acessados diretamente, sem necessidade da existência de um objeto. Exemplos: NomedaClasse.variavelestatica = 12; NomedaClasse.metodoestatico; Métodos estáticos podem referenciar apenas métodos estáticos e não podem referenciar operadores this e super Orientação a Objetos em Java 35 Orientação a Objetos em Java 36

10 Modificador Static Exemplo: class Pessoa { static int numpessoas = 0; int id; Pessoa () { id = numpessoas; numpessoas++;... Pessoa p1 = new(pesssoa); p1.numpessoas++; // mesmo efeito que abaixo Pessoa.numpessoas++; Static Initializer Para iniciar variáveis de classe, inicializers são executados automaticamente na carga da classe Exemplo: static double[] sin256 = new double [256]; static { for (int i=0; i <256; i ++) sin256[i] = Math.sin ( i/256*2math.pi); Não é função, não tem argumentos Uma classe pode ter vários static initializers, sendo executados na ordem em que aparecem Orientação a Objetos em Java 37 Orientação a Objetos em Java 38 Perguntas Porque um método estático não pode referenciar elementos que não sejam estáticos? Em que situação um método final pode ser útil? Modificador Abstract Indica classe ou método abstrato, com o objetivo de definir generalizacões especializar em subclasses classe abstrata: pelo menos um método abstrato método abstrato: sem corpo, apenas assinatura Exemplos: public abstract class Number (superclasse de Integer, Double, Float) public abstract int intvalue() public abstract float floatvalue() public abstract double doublevalue() Orientação a Objetos em Java 39 Orientação a Objetos em Java 40

11 Modificador Abstract Classes abstratas definem protocolos para hierarquia, fornecendo apenas modelos de comportamento representam generalizações contém pelo menos um método abstrato Métodos abstratos método sem corpo (sem implementação, apenas assinatura) representa comportamento comum a todas subclasses, mas com distinta implementação em cada subclasse métodos abstratos são implementados em subclasses Modificador Abstract Classe contendo método abstrato não pode ser instanciada Construtores e métodos private ou static não podem ser declarados como abstract Declaração de classes e métodos abstratos: abstract public class <nome_classe> { // pelo menos um método abstrato... abstract public <tipo_retorno > <nome_método > ( ) ; Orientação a Objetos em Java 41 Orientação a Objetos em Java 42 Interfaces Classe na qual todos os métodos são abstratos coleção de métodos abstratos Simula herança múltipla Constituem-se, estritamente, em modelos de comportamento Não podem ser instaciadas Variáveis não podem ser herdadas de uma Interface Todos os métodos de interface devem ser publicos e abstratos Uma classe implementa uma interface quando indicada pela palavra implements Uma classe pode implementar várias interfaces Hierarquia de interface não é relacionada com a hierarquia de classes Interfaces Exemplo public class Printer// classe concreta {... public interface Copier { public void copydoc (Doc d ) ; public interface Fax { public void transmitdoc (Doc d ) ; Public class MultiFunctionPrinter extends Printer implements Copier, Fax { public void copydoc (Doc d) { // implemta concreta public void transmitdoc (Doc d) {//implemta concreta Orientação a Objetos em Java 43 Orientação a Objetos em Java 44

12 Interfaces Perguntas Uma classe que implementa uma interface não herda, apenas promete implementar os métodos definidos na interface (implements) O modificador abstract não deve ser usado na declaração dos métodos Vantagem do uso de interfaces: definição de protocolos para classes abstratas sem se preocupar com detalhes de implementação compartilhar uma mesma interface com várias classes ular herança múltipla Interfaces podem ser especializadas? Interfaces formam hierarquias independentes? São derivadas da classe Object? Orientação a Objetos em Java 45 Orientação a Objetos em Java 46 Classes Abstratas X Interfaces Questões semânticas Quando usar uma ou outra Exemplo: Célula de uma planilha Deve manipular tipos como String, Float, Data, etc... Possíveis soluções: Definir métodos no ancestral comum Criar um novo ancestral e redefinir tipos presentes na célula da planilha. Interfaces: Melhor solução Orientação a Objetos em Java 47

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento Orientação a objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Linguagens orientadas a procedimentos e linguagens orientadas a objetos Unidade de programação: funções e classes

Leia mais

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }

Lista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; } Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos

Leia mais

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III

Programação Orientada a Objetos. Métodos e Atributos. Métodos. Métodos. Alexandre César Muniz de Oliveira. Parte III Programação Orientada a Objetos Alexandre César Muniz de Oliveira Métodos e Atributos Parte III Métodos [mod] tipo nome ([tipo arg]) [throws exc]{ [mod]: zero ou mais modificadores separados por espaços

Leia mais

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs

Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs Programação Orientada a Objetos Professor: André Luis Meneses Silva andreluis.ms@gmail.com br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância

Leia mais

Classe Abstrata e Interface

Classe Abstrata e Interface Orientação a objetos com Java Classe Abstrata e Interface Byron Leite byron.leite@gmail.com 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public

Leia mais

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas

Leia mais

Palavras Reservadas da Linguagem Java

Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java: Categorias Tipos de dados primitivos Literais Pseudo-variáveis Desvio e controle de fluxo Pacotes Exceções Modificadores de

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Prof. Kléber de Oliveira Andrade pdjkleber@gmail.com Objetos e Classes Programação Orientada ao Objeto O paradigma da Orientação ao Objeto é um mecanismo que ajuda a definir

Leia mais

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos

Programação. Orientada a Objetos: Herança. Objetos. Relacionamento entre classes. Análise e Projeto Orientados a. Objetos Programação Orientada a Objetos: Herança Alexandre César Muniz de Oliveira Análise e Projeto Orientados a Objetos A análise orientada a objetos Determina o que o sistema deve fazer: Quais os atores envolvidos?

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/50 Herança revisão (1) A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse

Leia mais

Vamos imaginar que queremos projetar um jogo em que haja diferentes personagens:

Vamos imaginar que queremos projetar um jogo em que haja diferentes personagens: Interfaces Interfaces Interfaces padronizam como coisas, pessoas ou sistemas podem interagir Por exemplo, os controles de um rádio: interface entre o usuário e os componentes internos do rádio Interfaces

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos

Encapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;

Leia mais

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -

Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes - Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Programação Orientada a objetos Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do

Leia mais

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)

Ex: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel) Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

Herança. Prof. Fernando V. Paulovich 23 de agosto de 2010

Herança. Prof. Fernando V. Paulovich  23 de agosto de 2010 Herança SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação(ICMC) Universidade

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-7 Reutilização de Classes Prof. Esbel Tomás Valero Orellana Até Aqui Introdução a POO e sua implementação em Java Atributos, métodos e encapsulamento dos mesmos Trabalhando

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Classes e Objetos, Construtores e Desconstrutores, Atributos e

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa

Leia mais

Herança e Polimorfismo

Herança e Polimorfismo Herança e Polimorfismo 2013 O que veremos hoje? Herança e polimorfismo Transparências baseadas no material do Prof. Gilbert Azevedo e Prof. Jailton Carlos Objetivos Conceito de Polimorfismo em POO Mais

Leia mais

9 Classes Abstractas e Interfaces

9 Classes Abstractas e Interfaces 9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Herança. Prof. Leonardo Barreto Campos 1

Herança. Prof. Leonardo Barreto Campos 1 Herança Prof. Leonardo Barreto Campos 1 Sumário Introdução; Herança Simples; Tipos de Herança; Classe Abstrata; Conversão de Tipos entre Base e Derivada; Níveis de Herança; Herança Múltipla; Bibliografia;

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Herança Aula de Hoje Problema Considere uma empresa que tenha tipos de empregados no aplicativo de folha de pagamento Um empregado tem nome,

Leia mais

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus Curso Disciplina Linguagem de Programação II Curso Engenharia da Computação Fundamentos Básicos da linguagem Java (Programação Orientada a Objetos) Site : http://www1.univap.br/~wagner/ec.html Prof. Responsáveis

Leia mais

Java First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração

Java First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração Java First-Tier: Aplicações Orientação a Objetos em Java (II) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Sobrecarga Um recurso usual em programação OO é o uso de sobrecarga

Leia mais

Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads.

Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads. Threads Folha 5-1 Num programa em JAVA é possível definir diferentes sequências de execução independente: Threads. Uma Thread é similar a um processo no sentido em que corresponde a um conjunto de instruções

Leia mais

Programação Orientada a Objeto Java

Programação Orientada a Objeto Java Programação Orientada a Objeto Java Aula 2 Introdução a Programação Java Sintaxe da Linguagem e Principais Conceitos Profª Kelly Christine C. Silva Sumário Construção do programa Saída de dados Entrada

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 7 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract

Leia mais

Programação Orientada a Objetos II

Programação Orientada a Objetos II Programação Orientada a Objetos II Introdução Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com www.bolinhabolinha.com Apresentação Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com Ementa Introdução ao Desenvolvimento

Leia mais

4 Conceito de Herança

4 Conceito de Herança 4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação

Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação 4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança

Leia mais

ção a Objetos em Java

ção a Objetos em Java Uso de Orientaçã ção a Objetos em Java Objetos e Mensagens Objetos em Java Principais classes Containers Um pouco de história... Variáveis como elementos isolados int dia, mes, ano; Fácil compreensão,

Leia mais

Programação Orientada a Objetos Flávio de Oliveira Silva 144

Programação Orientada a Objetos Flávio de Oliveira Silva 144 HERANÇA Herança é a capacidade de uma subclasse de ter acesso as propriedades da superclasse(também chamada classe base) relacionada a esta subclasse. Dessa forma os atributos e métodos de uma classe são

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-4 Construtores e Sobrecarga Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de dados nativos em Java

Leia mais

Lista de Exercícios Nro. 1 Programação Orientada a Objetos - SCC204

Lista de Exercícios Nro. 1 Programação Orientada a Objetos - SCC204 Lista de Exercícios Nro. 1 Programação Orientada a Objetos - SCC204 Exercício 1: Descreva algumas diferenças básicas entre programação estruturada e programação orientada a objetos. Exercício 2: Para que

Leia mais

Programação Avançada C++ Slide 12 Nielsen Castelo Damasceno

Programação Avançada C++ Slide 12 Nielsen Castelo Damasceno Programação Avançada C++ Slide 12 Nielsen Castelo Damasceno Visibilidade de membros Membro da classe derivada pode usar os membros públicos ( public ) e protegidos ( protected ) da sua classe base (como

Leia mais

ORIENTAÇÃO A OBJETOS SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

ORIENTAÇÃO A OBJETOS SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO ORIENTAÇÃO A OBJETOS SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO HERANÇA A sintaxe de herança a para C++ e para Java são diferentes. Além m disso, em C++ é possível construir herança a múltipla...

Leia mais

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,

Leia mais

Linguagem de Programação II Implementação

Linguagem de Programação II Implementação Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos

Leia mais

Herança e Classes Abstratas. João Paulo Q. dos Santos

Herança e Classes Abstratas. João Paulo Q. dos Santos Herança e Classes Abstratas João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Herança; Sobrescrita(sobreposição) de métodos; Herança e construtores; Conceitos sobre classes abstratas;

Leia mais

Conceitos de Programação Orientada a Objetos

Conceitos de Programação Orientada a Objetos Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Linguagem de Programação. Diagrama de classes

Linguagem de Programação. Diagrama de classes Linguagem de Programação Diagrama de classes Joyce França Professora de Ciência da Computação - IFNMG 2 Agenda Diagrama de classes Herança Associação Agregação Exercícios 3 Diagrama de classes Mostra um

Leia mais

A B Classe Genérica D A C. Classe Especializada. Classe Especializada. Características Herdadas

A B Classe Genérica D A C. Classe Especializada. Classe Especializada. Características Herdadas Herança e Polimorfismo Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Revisando -Herança Estrutura Hierárquica e modular Projeção de classes genéricas que podem ser especializadas

Leia mais

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)

Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos) Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private

Leia mais

Vejamos o seguinte exemplo public class Exemplo private int testada = 20; public void testapalavra(int testada) JOptionPane.showMessageDialog(null,"Pa

Vejamos o seguinte exemplo public class Exemplo private int testada = 20; public void testapalavra(int testada) JOptionPane.showMessageDialog(null,Pa Palavra reservada this Em Java podemos ter um parâmetro de um método e um atributo de uma classe com o mesmo nome. Caso façamos uma referência a esta variável, pelo princípio da localidade estaremos referenciando

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 7: Interfaces LEEC@IST Java 1/31 Interfaces revisão (1) Uma interface é um conjunto de protótipos de métodos (sem implementações) que especifica um serviço bem definido:

Leia mais

Lição 11 Herança, polimorfismo e interfaces

Lição 11 Herança, polimorfismo e interfaces Lição 11 Herança, polimorfismo e interfaces 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Definir superclasses e subclasses Criar Override de métodos de superclasses Criar métodos e classes

Leia mais

Laboratório de programação II

Laboratório de programação II Laboratório de programação II Herança e Polimorfismo Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando

Leia mais

Orientação a Objetos (em Java)

Orientação a Objetos (em Java) Orientação a Objetos (em Java) Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2012.1/es1 Programação Estruturada Composição dos Programas Um programa écomposto por

Leia mais

Java First-Tier: Aplicações. Herança: Simples Múltipla. Orientação a Objetos em Java (III) Problemas de Herança Múltipla.

Java First-Tier: Aplicações. Herança: Simples Múltipla. Orientação a Objetos em Java (III) Problemas de Herança Múltipla. Java First-Tier: plicações Orientação a Objetos em Java (III) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Herança: Simples Múltipla O tipo de herança que usamos até agora é chamado

Leia mais

Prof. A. G. Silva. 30 de outubro de Prof. A. G. Silva INE5603 Introdução à POO 30 de outubro de / 1

Prof. A. G. Silva. 30 de outubro de Prof. A. G. Silva INE5603 Introdução à POO 30 de outubro de / 1 INE5603 Introdução à POO Prof. A. G. Silva 30 de outubro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 30 de outubro de 2017 1 / 1 Especialização de classes (I) (Cap. 6) Operações de abstração como

Leia mais

Notas de Aula 09: Tratamento de exceções

Notas de Aula 09: Tratamento de exceções Notas de Aula 09: Tratamento de exceções Objetivos da aula: Compreender o conceito de exceção Aprender a tratar exceções nos programas Entender a hierarquia das exceções Criar e lançar uma exceção proprietária

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável O controlo da execução do programa é transferido

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 5 Polimorfismo Sobrecarga (overloading) de métodos: public class x { public void m1( ) {... sobrecarga do método m1 public void m1 ( int p ) {... - Diz-se que o nome de um método foi sobrecarregado ( overloaded

Leia mais

POO29004 Programação Orientada a Objetos

POO29004 Programação Orientada a Objetos POO29004 Programação Orientada a Objetos Herança Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo 11 de setembro

Leia mais

Algoritmos e Programação 2. Objetos e Classes em Java. Classes. Revisão. Definições de classes incluem (geralmente):

Algoritmos e Programação 2. Objetos e Classes em Java. Classes. Revisão. Definições de classes incluem (geralmente): Algoritmos e Programação 2 Baseado no material do Prof. Júlio Machado Objetos e Classes em Java Revisão Classes: encapsulam dados (atributos) e operações sobre os dados (métodos) Objetos: instâncias de

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Herança Prof. Francisco de Assis S. Santos, Dr. São José, 2014. Herança em POO O conceito de herança torna mais rápido o desenvolvimento de softwares complexos Novas classes

Leia mais

UNIFEI Disciplina Professor

UNIFEI Disciplina Professor UNIFEI Disciplina Professor Universidade Federal de Itajubá Instituto de Engenharia de Sistemas e Tecnologias da Informação-IESTI CCO02 Enganharia de Software II Enzo Seraphim Nota de aula de Java Encapsulamento

Leia mais

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno

Programação Orientada a Objetos. Aula 1.9 this e static. Prof. Bruno Moreno Programação Orientada a Objetos Aula 1.9 this e static Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Relembre: Clase RoboSimples Os métodos move() e move(int passos) podem ser reescrito sem redundância de

Leia mais

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){

nome = n; cargo = c; salario = s; public void print() { System.out.println(nome cargo salario); public void aumento( double fator){ UNIVERSIDADE FEDERAL DE SANTA CATARINA - Departamento de Automação e Sistemas PROGRAMAÇÃO DE SISTEMAS AUTOMATIZADOS - 2016/2 - P2 Nome: ------------------------------------------------------------------------------------------------------

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Orientação a Objetos Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Sistemas de Objetos DistribuídosRevisão Java e Java ORBs p.1/26

Sistemas de Objetos DistribuídosRevisão Java e Java ORBs p.1/26 Sistemas de Objetos Distribuídos Revisão Java e Java ORBs Francisco José da Silva e Silva Departamento de Informática da Universidade Federal do Maranhão Sistemas de Objetos DistribuídosRevisão Java e

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Tipos, Literais, Operadores

Tipos, Literais, Operadores Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não

Leia mais

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática 6 Polimorfismo Sobrecarga (overloading) de métodos: public class x { public void m1( ) {... sobrecarga do método m1 public void m1 ( int p ) {... Diz-se que o nome de um método foi sobrecarregado ( overloaded

Leia mais

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção.

Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. 6 Exceções Quando um programa viola as restrições semânticas da linguagem, a JVM assinala um erro ao programa, sob a forma de exceção. Uma exceção é um erro recuperável - O controlo da execução do programa

Leia mais

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Herança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Possibilita o reuso de classes (código-fonte) Usar quando:

Leia mais

extendsé usado para indicar herança em JAVA

extendsé usado para indicar herança em JAVA Herança e Polimorfismo Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Revisando extendsé usado para indicar herança em JAVA class ClasseA{ protected int a; public int geta()

Leia mais

Interfaces e Classes Abstratas

Interfaces e Classes Abstratas Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos

Leia mais

Instituto de Informática Estrutura de Dados II

Instituto de Informática Estrutura de Dados II Instituto de Informática Estrutura de Dados II Revisão de Métodos em Classes Aplicada a Estrutura de Dados Básicas 20/08/2018 Profa. Lucília Gomes Ribeiro Prof. Dirson S Campos Programação em Java q O

Leia mais

Programação OO em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM

Programação OO em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM Programação OO em Java Profa Andréa Schwertner Charão DLSC/CT/UFSM Sumário Herança Visibilidade de atributos e métodos Extensão e sobreposição Uso de super Referências para objetos Polimorfismo Conceitos

Leia mais

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.

Interfaces. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno. Interfaces Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Interfaces É utilizada para agrupar conceitos em

Leia mais

Herança. Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman SISTEMAS DE INFORMAÇÃO 1

Herança. Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman SISTEMAS DE INFORMAÇÃO 1 Herança Fátima L. S. Nunes Luciano A. Digiampietri Norton T. Roman 1 1 1 Motivação Você está desenvolvendo um sistema de gerenciamento de pessoal para a USP Precisa fazer: Cadastro de alunos e professores

Leia mais

Aula 9 Herança. Prof. Jefersson Alex dos Santos

Aula 9 Herança. Prof. Jefersson Alex dos Santos Aula 9 Herança Prof. Jefersson Alex dos Santos Roteiro Introdução Conversão de tipo explícita (Cast) Acesso Protegido A classe Object A classe Class Reflexão Recomendações de Projeto Herança Técnica necessária

Leia mais

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura

Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação

Leia mais

Linguagem de Programação IV Introdução

Linguagem de Programação IV Introdução Linguagem de Programação IV Introdução Prof. Alessandro Borges 2 Tópicos Orientação a objetos Classe Objeto Abstração Encapsulamento Herança Polimorfismo Plataforma Java 3 4 POO é um paradigma de programação

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro 5 Polimorfismo Sobrecarga (overloading) de métodos: public class x { public void m1( ) {... sobrecarga do método m1 public void m1 ( int p ) {... - Diz-se que o nome de um método foi sobrecarregado ( overloaded

Leia mais

Introdução à Programação. Encapsulamento e Herança

Introdução à Programação. Encapsulamento e Herança Introdução à Programação Encapsulamento e Herança Tópicos da Aula Hoje, aprenderemos conceitos mais avançados de Orientação a Objetos Encapsulamento Usando modificadores de acesso em C++ Herança Importância

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos luno: ata: Professor: Leonardo abral da Rocha Soares 1.ado o seguinte código: class valiacao { Qual fragmento de código irá compilar? a) class Prova extends valiacao { b)

Leia mais

Java na Prática. Célio Silva Aula 3

Java na Prática. Célio Silva Aula 3 Java na Prática Célio Silva Aula 3 Java na Prática Collections List List são listas de coisa ordenadas/não ordenadas, com duplicações permitidas e com um índice Servem para encapsular código de tratamento

Leia mais

Interface gráfica em Java: Swing e SWT

Interface gráfica em Java: Swing e SWT Programação Orientada a Objetos Interface gráfica em Java: Swing e SWT UNIFEI 14/06/2012 Componentes gráficos em Java Os componentes gráficos em Java Componentes de desenho 2D e 3D Componentes de interface

Leia mais

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto

Paradigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural

Leia mais

Classes e Objetos. Prof. Fernando V. Paulovich 9 de agosto de 2010

Classes e Objetos. Prof. Fernando V. Paulovich  9 de agosto de 2010 Classes e Objetos SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão

Leia mais

Orientação a Objetos (em Java)

Orientação a Objetos (em Java) Orientação a Objetos (em Java) Viviane Torres da Silva viviane.silva@ic.uff.br http://www.ic.uff.br/~viviane.silva/2010.2/es1 Programação Estruturada Composição dos Programas Um programa écomposto por

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Manipulando Atributos Podemos alterar ou acessar os valores guardados nos atributos de um objeto se tivermos a referência a esse objeto. Os atributos são acessados pelo nome. No

Leia mais

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos

Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis

Leia mais

Introdução ao Java. Prof. Herbert Rausch Fernandes

Introdução ao Java. Prof. Herbert Rausch Fernandes Introdução ao Java Prof. Herbert Rausch Fernandes Orientação a Objetos Programação Orientada por Objetos: é a construção de sistemas de software como uma coleção estruturada de implementações de tipos

Leia mais

Avançando em Java com Polimorfismo. Prof.: Hugo Barros

Avançando em Java com Polimorfismo. Prof.: Hugo Barros Avançando em Java com Polimorfismo Prof.: Hugo Barros Tópicos da Aula Polimorfismo: Exemplos de polimorfismo Vantagens do polimorfismo Tipos de polimorfismo Métodos Abstratos Classes Abstratas Vinculação

Leia mais