PCS 3111: RECUPERAÇÃO

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

Download "PCS 3111: RECUPERAÇÃO"

Transcrição

1 PCS 3111: RECUPERAÇÃO 03/02/2015 ALEXANDRE HENRIQUE COSTA ROSSI: 4,35 Funcionamento (0,0) Código não compila (-1,5) o CursoExtensao.h: Faltou declarar o método getmedia o CursoExtensao.cpp: faltou um ; o CursoExtensao.cpp: O atributo nome é privado e não poderia ser usado. o Disciplina.cpp: O método getnome recebe um vector o CursoGraduacao.cpp: faltou fazer um include de vector e de disciplina o CursoGraduacao.cpp: não é possível declarar o vector nome no construtor o CursoGraduacao.cpp: o método push_back deveria receber um ponteiro de disciplina. o CursoGraduacao.cpp: o for deve usar o ; como separador de comandos. Idem para o for da impressão das médias; o CursoGraduacao.cpp: os métodos recebem um vector nome ao invés da string nome o CursoGraduacao.cpp: faltou ; no método getmedia; o main.cpp: curso -> Curso o main.cpp: o vector é de objetos Curso e não de ponteiros de Curso. o main.cpp: variável c0 não declarada Erro ao adicionar disciplina ao curso de graduação: o curso não tem um vector de disciplinas que pode ser usado (-0,25) o Além disso, o nome da disciplina é o nome do curso (não é usado o nome da disciplina informado) Erro ao apresentar a média dos cursos: para chamar a média é passado o nome (-0,25) Aplicação dos conceitos OO (3,9) O construtor de CursoExtensao não deveria usar o atributo nome, já que ele é privado (-0,25) O vector de disciplinas deveria ser um atributo do Curso de Graduação (-0,75) Os métodos setmedia e setcreditos de CursoGraduação são desnecessários. Ao adicionar uma disciplina o Curso de Graduação deveria calcular isso (-0,5) O método setmedia no CursoExtensao é desnecessário. Uma vez definida a média no construtor, ela não precisa ser alterada (-0,1) Os métodos adicionardisciplina e calcularmedia não deveriam receber um vector nome (e o vector seria as disciplinas) o No caso do adicionar disciplina, deveria ser o nome (-0,25) o No caso do calcular média, o parâmetro não é necessário: o atributo deveria ser usado (-0,25)

2 O método getmedia do CursoGraduacao chama o calcularmedia, mas não passa um parâmetro (que ele precisa) (-0,25) Faltou criar o objeto disciplina no método adicionardisciplina (-0,5) CursoExtensao e CursoGraduacao: não deveria ser declarado o atributo nome, já que ele está definido na classe pai (-0,25) Adequação de código (0,45) O atributo contator de CursoGraduacao é desnecessário, já que o vector gerencia isso (-0,1) o Idem para o contadordisciplina no main (-0,1) O atributo nome passado para o adicionardisciplina é a string nome e não um vector (-0,25) o No main, ao criar um curso de graduação, o nome não é o nome do curso, mas um objeto curso. O método calcularmedia é desnecessário no CursoGraduacao (-0,1) ALEXANDRE YEONG CHAN CHO: 1,5 Funcionamento: 0,0 Código não compila (-1,5) o main.cpp: o vector é de string, mas tenta-se adicionar um curso o main.cpp: é feito um push_back em uma posição especifica do vector. o main.cpp: a classe Curso é usada como curso o main.cpp: o vector curso é um ponteiro, então deve ser usado o -> o main.cpp: disciplina não deveria ser adicionada ao vector de curso Erro ao adicionar curso de graduação: para adicionar em um vector é necessário usar o método push_back (-0,25) Erro ao calcular a média do curso de graduação: é usada uma matriz que não existe (- 0,25) Erro ao apresentar as médias dos cursos de graduação: curso.at(j) << ": " << curso[j].at(0) não imprime o nome e a média do curso (-0,25) Aplicação dos conceitos OO (0,75) O arquivo "Curso.h" não deveria ser alterado (-1,0) o O método getmedia não deveria ser comentado. Isso tornou a classe concreta. Faltou criar classes para Curso de graduação e curso de extensão (-4,0) Cada curso de graduação deveria ter um conjunto de disciplinas diferente (-0,75) o Ou seja, deveria ser criado um vector como atributo na classe de curso de graduação A lógica de cálculo da média não deveria ficar no main (mas em uma classe para o curso de graduação) (-0,5) Adequação de código (0,75) O vector de cursos deveria ser vector<curso *> e não de string (-0,25)

3 HELOISA GUSMAO BUONONATO: 5,75 Funcionamento: 0,0 Código não compila (-1,5) o main.cpp: a separação do for é com ; o main.cpp: faltou um ; depois do cout da impressão dos cursos o main.cpp: variável c não foi declarada Erro ao apresentar a média dos cursos: o while não varre os cursos (-0,25) Erro ao iniciar o programa: a inicialização da mediac gera erro já que o arranjo não tem objetos criados (-0,25) Erro ao adicionar cursos de extensão: dentro do case é criado um novo arranjo c1 (- 0,25) Erro ao adicionar disciplinas ao curso de graduação: como sempre é criado um novo arranjo, as disciplinas que foram colocadas antes são perdidas (-0,25) Aplicação dos conceitos OO: (4,75) Deveria ser usado um vector para guardar os cursos (-0,75) Deveria ser usado um vector para guardar as disciplinas (-0,75) Cursoext: O atributo mediac deveria ser privado ou protegido (-0,25) o O ideal seria passar a media para o construtor da classe. Cursograd: o arranjo de disciplinas deveria ser privado ou protegido (-0,25) o Deveria haver um método para adicionar uma disciplina ao curso. Cursoext e cursograd: não deveria ser declarado o atributo nome, já que ele está definido na classe pai (-0,25) Adequação de código (1,0) Cursograd: evite usar m e n como nomes de variáveis. LAIS HARUMI FUKUJIMA AGUIAR: 7,35 Funcionamento (0,5) Código não compila (-1,5) o CursoGraduacao.h: faltou o include do vector o CursoGraduacao.h: erro de digitação (cresitos) o CursoGraduacao.h e CursoExtensao.h: faltou include de Curso o CursoGraduacao.cpp: discp não declarado (é nomedisciplina ) o CursoExtensao.cpp: não deve ser colocado virtual na implementação o Curso.h: faltou parametrizar o tipo do vector o Curso.cpp: método getmedia não deveria ser implementado o main.cpp: faltou instanciar corretamente o vector o main.cpp: faltou declarar CursoExtensão como ponteiro o main.cpp: existe um * sobrando ao adicionar disciplina o main.cpp: adicionar disciplina não recebe ponteiro

4 o main.cpp: assinatura de AdicionarDisciplina recebe um valor, mas é passado um ponteiro o main.cpp e CursoGraduacao.cpp: a separação do for é com ; o main.cpp e CursoGraduacao.cpp: size é um método de vector. o main.cpp: erro de digitação ( temprario ) o Disciplina.cpp: o destrutor não está no.h, então não precisa ser implementado. Aplicação dos conceitos OO (6,2) Curso: método getmedia é abstrato, portanto não deveria ser implementado (-0,5) CursoGraduação: o atributo média é desnecessário, já que ele é sempre calculado (o valor não é necessário entre chamadas de métodos) (-0,1) CursoGraduação não tem créditos (são as disciplinas quem tem) (-0,25) o Além do que é não é somado os créditos da disciplina disciplina- >getcreditos() Adequação de código (0,65) Faltou parametrizar o tipo do vector (-0,25) CursoGraduacao.h: o parâmetro de AdicionarDisciplina não é um nome de disciplina, mas uma disciplina (-0,1) LEONARDO MIRANDA LAPA: 2,5 Funcionamento: 0,0 O código não compila (-1,5) o main.cpp: O vector de cursos deveria ser vector<curso*> para poder adicionar um curso de extensão criado com new. o main.cpp: Tanto o vector disciplina quanto o curso de graduação são chamados de g o main.cpp: Os comandos g->curso(nome); e d->disciplina(nome, creditos, media); não são chamadas do construtor o main.cpp: curso não tem o atributo créditos o Curso.cpp: os métodos implementados não estão definidos no Curso.h Não permite o cadastramento de cursos (nem de graduação e nem de extensão) (-0,5) Erro ao apresentar a média do curso de extensão (-0,25) o Não se sabe o tipo do curso através do créditos ser NULL ou não: se for um Curso não tem o atributo (poderia ser usado um dynamic_cast, mas o polimorfismo seria a forma mais elegante de resolver) Erro ao apresentar a média do curso de graduação: É considerado apenas 1 vector com todas as disciplinas de todos os cursos (é o vector c (-0,25) Erro ao cadastrar disciplinas em um curso de graduação: as disciplinas são destruídas ao sair do case já que o vector é declarado dentro do case (-0,25)

5 Aplicação dos conceitos OO (1,75) O arquivo "Curso.h" não deveria ser alterado (-1,0) o Ele só tem o construtor e nenhum outro método. O arquivo "Disciplina.h" não deveria ser alterado (-1,0) o Disciplina não é um curso! São conceitos diferentes. A classe Curso não tem atributos e nem métodos: só tem um construtor (-1,0) Faltou criar uma classe específica para o curso de graduação (-1,0) A lógica de cálculo da média não deveria ficar no main (mas em uma classe para o curso de graduação) (-0,5) O vector de disciplinas deveria ficar no Curso de Graduação e não no main. Cada curso de graduação tem um conjunto de disciplinas diferente (-0,75) Adequação de código (0,75) Os vectors de disciplina e de curso deveriam ser de ponteiro de Curso e de disciplina para receber um objeto (e não fazer cópia) (-0,25) LUCAS DE SANTANA SCOCCA: 2,9 Funcionamento (2,0) Sem comentários Aplicação dos conceitos OO (0,0) O arquivo "Curso.h" não deveria ser alterado (-1,0) o O método getmedia deveria ser abstrato. o O método setmedia não deveria existir. o O atributo media não deveria ser adicionado. Faltou criar classes para Curso de graduação e curso de extensão (-4,0) Deveria ser usado um vector para guardar as disciplinas (-0,75) Deveria ser usado um vector para guardar os cursos (-0,75) O vector de disciplinas deveria ficar no Curso de Graduação e não no main. Cada curso de graduação tem um conjunto de disciplinas diferente (-0,75) A lógica de cálculo da média não deveria ficar no main (mas em uma classe para o curso de graduação) (-0,5) Adequação de código (0,9) Coloque o ; na mesma linha do comando. Use nomes adequados para variável ao invés de aux, aux2 e aux3. A variável aux3 na criação de curso de extensão é desnecessária (-0,1) MARCOS VINICIUS NOGUEIRA DA CRUZ (2,75) Funcionamento (0,25) Não permite o cadastramento de cursos (nem de graduação e nem de extensão) (-0,5) Não calcula a média do curso de extensão (-0,5)

6 Não calcula a média do curso de graduação (-0,5) Não adiciona a disciplina a um curso de graduação (-0,25) Aplicação dos conceitos OO (1,5) Faltou criar classes para Curso de graduação e curso de extensão (-4,0) O vector de disciplinas deveria ficar no Curso de Graduação e não no main. Cada curso de graduação tem um conjunto de disciplinas diferente (-0,75) O método getmedia do Curso não deveria ser implementado, já que ele é abstrato (- 0,25) São definidas variáveis globais em Disciplina.cpp que são iguais aos atributos da classe (-0,5) Adequação de código (1,0) Sem comentários. RICARDO CAMARGO LEMOS: 5,1 Funcionamento (0,0) Código não compila (-1,5) o Declaração de classe filha incorreta. O correto seria: class CursoExtensao : public Curso. o CursoGraduacao.h: listadedisciplinas deveria ser vetor de ponteiros o CursoGraduacao.h: faltou incluir Disciplina o CursoGraduacao.cpp: erro de digitação (CursoGraducao) o CursoGraduacao.cpp: faltou tipos dos parâmetros no método adicionardisciplina o CursoGraduacao.cpp: faltou tipo de retorno no getmedia o CursoGraduacao.cpp: faltou o () ao chamar o getmedia o CursoGraduacao.cpp : erro de digitação lisadedisciplinas o Curso.cpp: faltou definir o tipo do parâmetro no construtor o CursoExtensao.cpp: faltou definir o tipo do parâmetro no construtor o Disciplina.cpp: erro na assinatura do construtor o main.cpp: listadecursos deveria ser um vetor de ponteiros o main.cpp e CursoGraduacao.cpp: o comando for deve separa elementos com ; o main.cpp e CursoGraduacao.cpp: faltou declarar a variável i do for. Erro ao adicionar curso de graduação: tenta-se usar o método adicionardisciplina, mas ele é chamado para uma posição do vetor que é do tipo Curso! (-0,25) Erro ao apresentar a média: a atribuição i=numerodecursos gera um loop infinito (- 0,25) Erro ao calcular a média de curso de graduação: a atribuição i=numerodecursos gera um loop infinito (-0,25) o Outros erros: o for precisaria começar com a posição 1; faltou inicializar o valor da variável soma.

7 Aplicação dos conceitos OO (4,9) Deveria ser usado um vector para guardar as disciplinas (-0,75) Deveria ser usado um vector para guardar os cursos (-0,75) Construtor do CursoExtensão e CursoGraduação deveria chamar o construtor de Curso, já que é uma classe filha (-0,25) Construtor do CursoExtensão e CursoGraduação não deveria usar o nome do Curso, já que o atributo é privado (-0,25) Faltou implementar o destrutor de Curso (-0,1) o (Ele deveria ser vazio, mas precisa ser implementado) Adequação de código (0,7) Deselegante declarar variáveis globais no main.cpp: listadecursos e numerodecursos (-0,1) A lista de cursos começa na posição 1 e não na 0 (-0,1) CursoGraduacao: a variável mediafinal em getmedia é desnecessária (-0,1) VICTOR SCAVONE (3,0) Funcionamento (0,0) Código não compila (-1,5) o CURSO.cpp: os métodos são definidos dentro do construtor Idem para DISCIPLINA.cpp o DISCIPLINA.cpp: retorno de getmedia inadequado (doubleiplina) o DISCIPLINA.cpp: faltou ; em getnome o DISCIPLINA.cpp: faltou definição de um bloco em getcreditos Não permite o cadastramento de cursos (nem de graduação e nem de extensão) (-0,5) Não calcula a média do curso de extensão (-0,5) Não calcula a média do curso de graduação (-0,5) Não permite cadastrar disciplinas em um curso de graduação (-0,5) Aplicação dos conceitos OO (2,25) Faltou criar classes para Curso de graduação e curso de extensão (-4,0) Faltou implementar os construtores de Disciplina e Curso (-0,5) Faltou implementar o destrutor do Curso (-0,25) Adequação de código (0,75) Disciplina.h e Curso.h alterados para renomear as classes (desnecessário, contra a especificação e deselegante nomes em letras maiúsculas) (-0,25) WILLIAM TAMBERG: 2,3 Funcionamento: 0,0 Código não compila (-1,5) o Curso.h: faltou o include do vector

8 o Curso.h: faltou parametrizar o tipo do vector o Curso.cpp: os métodos a mais não foram implementados. o Curso.cpp: o construtor é incompatível com o definido no.h o Curso.h: faltou o tipo de retorno de adddisciplina o CExtensao.h e CGraduacao.h: faltou include de Curso.h o CExtensao.h e CGraduacao.h: o método getmedia não foi declarado o CExtensao.cpp: o método getmedia não foi implementado o CGraduação.h: for do getmedia não foi implementado. o main.cpp: erro na chamada do construtor do curso o main.cpp: erro na criação do vetor de cursos Não permite o cadastramento de cursos (nem de graduação e nem de extensão) (-0,5) Não apresenta a média do curso de extensão (-0,5) Não apresenta a média do curso de graduação (-0,5) Não permite cadastrar disciplinas em um curso de graduação (-0,5) Aplicação dos conceitos OO: 1,75 O arquivo "Curso.h" não deveria ser alterado (-1,0) Deveria ser usado um vector para guardar os cursos (-0,75) Cursos de extensão não deveriam ter disciplinas (-1,0) o Curso tem o adddisciplina e herda o vector de disciplinas Método para adicionar uma disciplina em um curso de graduação não foi implementado (-1,0) Faltou definir o construtor de CGraduação e CExtensão e chamar o construtor da classe pai (-0,5) Método para calcular a média não foi implementado: graduação e extensão (-0,5) A herança de Curso em CExtensao e CGraduação deveria ser pública (-0,25) O construtor do Curso não define o tipo (não tem como saber) (-0,25) Adequação de código: 0,55 Método settipo desnecessário: deveria ser usado o dynamics_cast (-0,1) CExtensao.h: o método settipo não deveria retornar o tipo, mas definir o tipo (-0,1) Faltou parametrizar o tipo do vector (-0,25) Não coloque ; depois da implementação do método.

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

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

PCS LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA

PCS LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO Departamento de Engenharia de Computação e Sistemas Digitais PCS - LABORATÓRIO DE PROGRAMAÇÃO ORIENTADA A OBJETOS PARA A ENGENHARIA ELÉTRICA EXERCÍCIO PROGRAMA

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

C com introdução a OO

C com introdução a OO ... Centro Integrado de Tecnologia da Informação C com introdução a OO ... Centro Integrado de Tecnologia da Informação Aula 9 Ronald Dener - Instrutor Matheus Soares - Monitor 17 / outubro 17 / outubro

Leia mais

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO

CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO REVISÃO POO INTRODUÇÃO À LINGUAGEM JAVA CRIANDO CLASSES EM JAVA Convenção de Nomes em Java Classes iniciam com letras maiúsculas Métodos, atributos e variáveis locais iniciam com minúsculas. Declaração

Leia mais

Linguagem de Programação C++

Linguagem de Programação C++ O que acontecerá se um programa driver para a classe Matriz efetuasse a seguinte sequência de instruções: #include "Matriz.h" int main() char opcao; switch (opcao) case 1: } 201 } int l, c; cout

Leia mais

Programação em Linguagem C++

Programação em Linguagem C++ Programação em Linguagem C++ Igor Kondrasovas Especialista em Computação Aplicada UDESC Sócio e Desenvolvedor na Inovativa Tecnologia igor@inovativatec.com www.inovativatec.com Agenda Herança e Polimorfismo

Leia mais

//conteúdo do arquivo Matriz.h class Matriz { private: int *elementos; int numerodelinhas; int numerodecolunas; void setnumerodelinhas(int); void

//conteúdo do arquivo Matriz.h class Matriz { private: int *elementos; int numerodelinhas; int numerodecolunas; void setnumerodelinhas(int); void //conteúdo do arquivo Matriz.h class Matriz private: int *elementos; int numerodelinhas; int numerodecolunas; void setnumerodelinhas(int); void setnumerodecolunas(int); int getnumerodelinhas(); int getnumerodecolunas();

Leia mais

Programação Estruturada Prof. Rodrigo Hausen Organização e Gerenciamento de Memória

Programação Estruturada Prof. Rodrigo Hausen  Organização e Gerenciamento de Memória Programação Estruturada Prof. Rodrigo Hausen http://progest.compscinet.org Organização e Gerenciamento de Memória 1 AULA PASSADA - vetores ou arrays Declaração de um vetor (array) em C: tipo nome[tamanho];

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

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

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Faculdade de Computação Aula Revisão Marcelo Zanchetta do Nascimento Material elaborado pela Profa. Ana Carolina Lorena - UNIFESP Desenvolvimento de Software ANÁLISE IMPLEMENTAÇÃO

Leia mais

Linguagem de Programação Introdução a Orientação a Objetos

Linguagem de Programação Introdução a Orientação a Objetos Linguagem de Programação Introdução a Orientação a Objetos Rafael Silva Guimarães Instituto Federal do Espírito Santo Campus Cachoeiro de Itapemirim Definição de Orientação a Objetos. Orientação a Objetos:

Leia mais

Classes II. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho

Classes II. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Classes II BCC 221 - Programação Orientada a Objectos(POO) Guillermo Cámara-Chávez Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Construtores I Quando um objeto da

Leia mais

Recursividade UFOP 1/48

Recursividade UFOP 1/48 BCC 201 - Introdução à Programação I Recursividade Guillermo Cámara-Chávez UFOP 1/48 Introdução I Recursividade: é um método de programação no qual uma função pode chamar a si mesma Muitas estruturas têm

Leia mais

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues SEL0433 Aplicação de Microprocessadores I Revisão da Linguagem C Prof. Evandro L. L. Rodrigues Estrutura de um programa C Diretivas de pré processamento Declaração de variáveis globais Declaração de protótipos

Leia mais

PCS3111. Laboratório de Programação Orientada a Objetos para Engenharia Elétrica. Aula 6: Polimorfismo

PCS3111. Laboratório de Programação Orientada a Objetos para Engenharia Elétrica. Aula 6: Polimorfismo PCS3111 Laboratório de Programação Orientada a Objetos para Engenharia Elétrica Aula 6: Polimorfismo Escola Politécnica da Universidade de São Paulo Conceito de polimorfismo 2 Polimorfismo A palavra vem

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 C/C++ Slide 5 Nielsen Castelo Damasceno

Programação C/C++ Slide 5 Nielsen Castelo Damasceno Programação C/C++ Slide 5 Nielsen Castelo Damasceno Programação estruturada Programação estruturada Programação estruturada Programação estruturada Programação estruturada vetores vetores vetores vetores

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

prim = A ; prim = &A[0];

prim = A ; prim = &A[0]; 57 12 - MAIS SOBRE APONTADOR 12.1 - Ponteiros e arrays Em C, ponteiros e matrizes são tratados de maneira semelhante. 12.1.1 - Nome O nome é um ponteiro, ou seja, aponta (contém o endereço) para o primeiro

Leia mais

Programação Orientada a Objetos para Redes de Computadores. Polimorfismo com Hierarquias de Herança. Exemplo: Hierarquia Animal

Programação Orientada a Objetos para Redes de Computadores. Polimorfismo com Hierarquias de Herança. Exemplo: Hierarquia Animal Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Polimorfismo Polimorfismo com Hierarquias de Herança

Leia mais

CURSO DE POO COM JAVA

CURSO DE POO COM JAVA 07 CURSO DE POO COM JAVA Arrays PROF. MARCOS VINICIUS marcos.engsoft@gmail.com Introdução Imaginemos que queiramos trabalhar com as notas dos alunos. Supondo que cada aluno deva ter cinco notas, podemos

Leia mais

Linguagem de Programação C++

Linguagem de Programação C++ Exercício: Com base nos conceitos estudados, implemente uma classe que possibilite a instanciação de matrizes de números naturais, com qualquer quantidade de linhas e colunas. Especifique os membros de

Leia mais

Professor Leonardo Cabral da Rocha Soares Lattes:

Professor Leonardo Cabral da Rocha Soares Lattes: Professor Leonardo Cabral da Rocha Soares Lattes: http://lattes.cnpq.br/3184602538494393 A Herança, em programação orientada a objetos (POO), é a possibilidade de escrever novas classes partindo de classes

Leia mais

PCS Laboratório de Programação Orientada a Objetos 1a. Prova. 02 de Setembro de 2015

PCS Laboratório de Programação Orientada a Objetos 1a. Prova. 02 de Setembro de 2015 PCS - 3111 Laboratório de Programação Orientada a Objetos 1a. Prova 02 de Setembro de 2015 Questão 1 (2,6) Deseja-se implementar um programa que recebe um mês e um dia atual de um ano e o mês e o dia de

Leia mais

Permite modularidade (dividir programa em partes): Facilita a depuração (debug) e portabilidade.

Permite modularidade (dividir programa em partes): Facilita a depuração (debug) e portabilidade. 222222222222222222222222222 8 - FUNÇÕES 81 - Características básicas É um trecho independente de código, com objetivos bem definidos Programas em C, geralmente consistem em várias pequenas funções, ao

Leia mais

COMPORTAMENTOS - Observações

COMPORTAMENTOS - Observações COMPORTAMENTOS - Observações O próprio objeto realiza operações de consulta ou alteração dos valores dos seus atributos Essas operações são definidas em seus métodos Os métodos também são utilizados para

Leia mais

Explicação do programa:

Explicação do programa: Disciplina: Introdução à Programação. IPRJ/UERJ Professora: Sílvia Mara da Costa Campos Victer Índice: Aula10 Sub-rotina: Em algoritmos Em C Sub-rotinas subprograma - programação modularizada Definição:

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

1 Introdução e Conceitos básicos

1 Introdução e Conceitos básicos 1 Introdução e Conceitos básicos Aula 02 Sumário Capítulo 1 Introdução e Conceitos básicos 1.1 Modelos 1.2 Tipos primitivos de dados 1.3 Tipo Abstrato de dados 1.4 Orientação a Objetos 1.4.1 Classe 1.4.2

Leia mais

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos

Linguagem de Programação II Programação Orientada a Objetos. Orientação a Objetos Linguagem de Programação II Programação Orientada a Objetos Orientação a Objetos Prof. Alessandro Borges 2 Tópicos Introdução à Programação Orientada a Objetos Conceitos Objetivos Classes e Objetos Atributos

Leia mais

13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica

13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Mestrado em Engenharia Física Tecnológica 13 a Aula - Instruções Condicionais. Ciclos. Pré-processador. Variáveis de ambiente. Programação Mestrado em Engenharia Física Tecnológica Samuel M. Eleutério sme@tecnico.ulisboa.pt Departamento de Física

Leia mais

Funções. definição, declaração e chamada

Funções. definição, declaração e chamada Funções definição, declaração e chamada Funções Em C, um programa é uma coleção de FUNÇÕES. Uma função é um bloco de código que recebe um nome e que tem possivelmente PARÂMETROS. A partir do nome, o bloco

Leia mais

Funções. definição, declaração e chamada

Funções. definição, declaração e chamada Funções definição, declaração e chamada Funções Em C, um programa é uma coleção de FUNÇÕES. Uma função é um bloco de código que recebe um nome e que tem possivelmente PARÂMETROS. A partir do nome, o bloco

Leia mais

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga

Sobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga Algoritmos e Programação II Aula 3 Sobrecarga *Adaptado do material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, com nomes

Leia mais

POO fundamentos Parte II. Professor Vicente Paulo de Camargo

POO fundamentos Parte II. Professor Vicente Paulo de Camargo POO fundamentos Parte II Professor Vicente Paulo de Camargo COMPORTAMENTOS Um comportamento expressa uma ação que um objeto ou instância de uma classe pode executar Na POO um comportamento é expresso através

Leia mais

CIV 2802 Sistemas Gráficos para Engenharia º Trabalho: Programação básica em C++: Classes

CIV 2802 Sistemas Gráficos para Engenharia º Trabalho: Programação básica em C++: Classes CIV 2802 Sistemas Gráficos para Engenharia 2011.1 4º Trabalho: Programação básica em C++: Classes Implementação de uma calculadora RPN (Reversed Polish Notation) Entrega: 05/abril/2011 Pede-se complementar

Leia mais

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes? Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros

Leia mais

CMP Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira

CMP Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira CMP1048 - Técnicas de Programação 2 a Lista de Exercícios - Passagem de parâmetros por referência e ponteiros Max Gontijo de Oliveira 1. Considere um programa em C++ que tenha duas variáveis declaradas

Leia mais

Arranjos. David Déharbe

Arranjos. David Déharbe Arranjos. David Déharbe 1 1 Roteiro da aula Exercícios motivadores para arranjos; Motivação; Definição; Arranjos em C; Arranjos e ponteiros; Exemplos. 2 2 Exercícios. Escreva um programa que lê cinco números

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos Programação Orientada a Objetos Classes e Objetos Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia de Sistemas Lembrando Na Unidade II Modelagem Orientada a Objetos, vimos: Como utilizar

Leia mais

Idiomas de Programação

Idiomas de Programação DCC / ICEx / UFMG Idiomas de Programação Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Definição de Idiomas Idiomas são padrões de baixo nível específicos de uma linguagem de programação Cada idioma

Leia mais

Construtores. Introdução

Construtores. Introdução Construtores José Gustavo de Souza Paiva Introdução Até o momento, temos tratado a inicialização dos atributos das classes de duas maneiras Alteração dos valores dos atributos diretamente - atributos públicos

Leia mais

Classes, Métodos e Propriedades

Classes, Métodos e Propriedades Ambiente de Programação Visual Classes, Métodos e Propriedades Prof. Mauro Lopes 1-31 22 Objetivos Nesta aula iremos dar continuidade aos elementos de programação da Linguagem C#. Iremos apresentar de

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

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27.

Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Elaborando as Interfaces dos trabalhos das aulas 25, 26 e 27. Prof. André Aparecido da Silva Disponível em: http://www.oxnar.com.br/2017/3ati Aulas 25, 26 e 27. 1 Na aula da semana passada ficaram para

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

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

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP

AULA 2 VISÃO BÁSICA DE CLASSES EM PHP AULA 2 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

Programação Estruturada e Orientada a Objetos. Objetos e Métodos

Programação Estruturada e Orientada a Objetos. Objetos e Métodos Programação Estruturada e Orientada a Objetos Objetos e Métodos 2013 O que veremos hoje? Objetos e Métodos Transparências baseadas no material do Prof. Jailton Carlos Objetivos Aprender a criar construtores;

Leia mais

Linguagem C. André Tavares da Silva.

Linguagem C. André Tavares da Silva. Linguagem C André Tavares da Silva dcc2ats@joinville.udesc.br Variáveis Posição nomeada de memória que é usada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis devem ser

Leia mais

Classes. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho

Classes. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Classes BCC 221 - Programação Orientada a Objectos(POO) Guillermo Cámara-Chávez Departamento de Computação - UFOP Baseado nos slides do Prof. Marco Antônio Carvalho Introdução I Estamos acostumados a criar

Leia mais

13/11/15. Incrementando C: C++ E na especificação de BigInt... Arquitetura da solução exemplo. O arquivo de declarações. Explorando a classe BigInt

13/11/15. Incrementando C: C++ E na especificação de BigInt... Arquitetura da solução exemplo. O arquivo de declarações. Explorando a classe BigInt Incrementando C: permite: Definir uma classe para números grandes; Manter o código bem parecido com o programa C. O mesmo programa em C (e até mesmo em Java) não são tão convenientes e elegantes. #include

Leia mais

Sub Rotinas. Estrutura de Dados. Prof. Kleber Rezende

Sub Rotinas. Estrutura de Dados. Prof. Kleber Rezende Sub Rotinas Estrutura de Dados Prof. Kleber Rezende Considerações Iniciais Uma dos métodos mais comuns e amplamente utilizados em programação de computadores é o Top-Down. Nesta abordagem um problema é

Leia mais

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU

Aula 6 POO 1 Construtores. Profa. Elaine Faria UFU Aula 6 POO 1 Construtores Profa. Elaine Faria UFU - 2019 Sobre o Material Agradecimentos Aos professores José Gustavo e Fabiano, por gentilmente terem cedido seus materiais. Os slides consistem de adaptações

Leia mais

Daniel Wildt

Daniel Wildt Orientação a Objetos 1 Daniel Wildt http://danielwildt.blogspot.com Agenda 2 Orientação a Objetos Classe x Objeto Representação classe Atributos / operações Construtores e Destrutores Liberando memória

Leia mais

Orientação a Objetos. Programação em C++

Orientação a Objetos. Programação em C++ OO Engenharia Eletrônica Orientação a Objetos - Programação em C++ Slides 10: 10.1 Noção de Evento. 10.2 Gabaritos ou Templates. Prof. Jean Marcelo SIMÃO 1 Primeira Parte Eventos - Recursão 2 Eventos Noções

Leia mais

Linguagem e Técnicas de Programação

Linguagem e Técnicas de Programação Linguagem C Função Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 07 Função 1 Conceitos As técnicas de programação dizem que, sempre que possível, evite códigos extensos, separando o mesmo em funções,

Leia mais

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz

Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Aula 4 Encapsulamento e Relacionamento Cleverton Hentz Sumário } Encapsulamento } Propriedades } Relacionamentos } Composição } Herança 2 O que é encapsulamento? } O que vocês entendem por encapsular?!

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

PADRONIZAÇÃO 10. INTERFACES PADRONIZAÇÃO CONTRATOS

PADRONIZAÇÃO 10. INTERFACES PADRONIZAÇÃO CONTRATOS PADRONIZAÇÃO 10. INTERFACES No dia-a-dia lidamos com diversos aparelhos elétricos Diversas empresas fabricam aparelhos elétricos com plugues E se cada empresa decidisse por conta própria o formato dos

Leia mais

C++ - Funções Virtuais (Polimorfismo) Base. Deriv0 Deriv1 Deriv2. print( ) print( ) print( ) dv0 dv1 dv2. p[0] = &dv0; p[1] = &dv1; p[2] = &dv2;

C++ - Funções Virtuais (Polimorfismo) Base. Deriv0 Deriv1 Deriv2. print( ) print( ) print( ) dv0 dv1 dv2. p[0] = &dv0; p[1] = &dv1; p[2] = &dv2; C++ - Funções Virtuais (Polimorfismo) Polimorfismo : (assumir várias formas) Em C++ indica a habilidade de uma única instrução chamar diferentes funções e portanto assumir formas diferentes. Veja isto

Leia mais

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

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Programação Orientada a Objetos para Redes de Computadores

Programação Orientada a Objetos para Redes de Computadores Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Polimorfismo Polimorfismo com Hierarquias Polimorfismo

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

Namespaces, Classes e Métodos.

Namespaces, Classes e Métodos. . Linguagem de Programação III Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento Acadêmico de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Linguagem

Leia mais

Parte IV. Linguagens de Programação. Relembrando da Última Aula... Empacotador de Préprocessadores. Primeiro Exemplo Usando Classes em C++

Parte IV. Linguagens de Programação. Relembrando da Última Aula... Empacotador de Préprocessadores. Primeiro Exemplo Usando Classes em C++ Linguagens de Programação Parte IV Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Introdução à Programação (Continuação) Relembrando da Última Aula... Ponteiros e strings Mais exemplos

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Parte IV Introdução à Programação em C++ (Continuação) Relembrando da Última Aula... Ponteiros e strings Mais

Leia mais

Criando Classes em PHP

Criando Classes em PHP Aula 05 Programação Orientação a objetos Criando Classes em PHP Orientação a objetos nada mais é que um paradigma de programação. Esse paradigma não é novo, desde a década de 60 já existiam linguagem que

Leia mais

POO e C++: Herança e Polimorfismo

POO e C++: Herança e Polimorfismo POO e C++: Herança e Polimorfismo Márcio Santi Luiz Fernando Martha Conceito de Herança em POO Recurso que torna o conceito de classe mais poderoso; Permite que se construa e estenda continuamente classes

Leia mais

Linguagens de Programação Departamento de Engenharia Eletrônica e de Computação - DEL-Poli/UFRJ Prof.: Miguel Elias Mitre Campista

Linguagens de Programação Departamento de Engenharia Eletrônica e de Computação - DEL-Poli/UFRJ Prof.: Miguel Elias Mitre Campista Linguagens de Programação Departamento de Engenharia Eletrônica e de Computação - DEL-Poli/UFRJ Prof.: Miguel Elias Mitre Campista == Laboratório 11 == 1. Escreva uma classe Carrinho para armazenar Itens

Leia mais

Configuração do Furbot no NetBeans

Configuração do Furbot no NetBeans Configuração do Furbot no NetBeans Primeiramente, é necessário abrir o NetBeans IDE que você baixou e instalou através do site oficial. Após aberto, será mostrada a tela inicial por padrão, com isso feche

Leia mais

A classe ArrayList. IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

A classe ArrayList. IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli A classe ArrayList Java oferece uma classe chamada ArrayList, que permite a criação e manipulação de objetos; Um objeto ArrayList é semelhante a um vetor de objetos, mas oferece inúmeras vantagens em relação

Leia mais

3.4. Programação Orientada a Objetos

3.4. Programação Orientada a Objetos Paradigmas de Linguagens I 1 3.4. Programação Orientada a Objetos Os conceitos de objetos e classes, vistos nas seções anteriores, são fundamentais na programação orientada a objetos. Complementando a

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

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETRÔNICA (DAELN) 2 a Prova

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETRÔNICA (DAELN) 2 a Prova UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ DEPARTAMENTO ACADÊMICO DE ELETRÔNICA (DAELN) Curso: Engenharia Eletrônica, Disciplina: Fundamentos de Programação II (IF62C), Turma: S Professores: Hermes Del

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato

Leia mais

[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama]

[Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama] [Linguagem de Programação 3] [Aula 01] [Gustavo Yoshio Maruyama] Objetivos Revisar conceitos de Orientação a Objetos Classes Objetos Encapsulamento Herança Sobrescrita de métodos Sobrecarga de métodos

Leia mais

Fundamentos de Programação de Computadores Linguagem C Função Unidade 08 Linguagem C - Função 1/18

Fundamentos de Programação de Computadores Linguagem C Função Unidade 08 Linguagem C - Função 1/18 Linguagem C Função Instituto Federal de Educação, Ciência e Tecnologia do Triângulo Mineiro Prof. Edwar Saliba Júnior Janeiro de 2018 Unidade 08 Linguagem C - Função 1/18 Conceitos As técnicas de programação

Leia mais

Classes e Encapsulamento

Classes e Encapsulamento Classes e Encapsulamento Marcio Santi POO e C++ Tipo Abstrato de Dados (TAD) TAD atributos dados que o representam interface operações associadas como é manipulado 1 Exemplo: Editor Gráfico (classe círculo)

Leia mais

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação Ederson Luiz da Silva Ciência da Computação Algoritmos e Programação Programação em C Características Criado na década de 70; Possui muitas regras em sintaxe e semântica; Utilizado para programação de

Leia mais

Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO

Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia de Sistemas Unidade IV Unidade IV Herança e Composição: Herança simples. Composição.

Leia mais

Programação Orientada a Objetos para Redes de Computadores

Programação Orientada a Objetos para Redes de Computadores Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Herança Herança Criação de uma nova classe de uma

Leia mais

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos

Leia mais

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 4 Funções. 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 4 Funções 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

Programação Orientada a Objetos

Programação Orientada a Objetos 1 Programação Orientada a Objetos A linguagem C, desde a sua primeira especificação, vem sendo desenvolvida com várias extensões. De uma dessas extensões foi criada a Linguagem C++ onde encontramos diversas

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

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 SOBRECARGA DE OPERADORES (C++) A sobrecarga de operadores ocorre quando desejamos utilizar operadores jáj conhecidos (+,-,*,/,=,+=...)

Leia mais

MC-102 Aula 21 Registros

MC-102 Aula 21 Registros MC-102 Aula 21 Registros Instituto de Computação Unicamp 27 de Outubro de 2016 Roteiro 1 Registros Declarando um novo tipo de Registro Acessando os campos de um Registro Lendo e Escrevendo Registros Atribuição

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 Tópicos picos Definição de estrutura Acessando membros de estruturas O tipo horario com struct Implementando horario com class Escopo

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores e Blocos de Inicialização

Leia mais

Detalhamento da Correção Prova Final de ED 2018/2

Detalhamento da Correção Prova Final de ED 2018/2 Detalhamento da Correção Prova Final de ED 2018/2 Gabarito utilizado na correção: Item Pontos,75,5 ordenação com a quicksort (chamada função e callback) 1,5 total 10 Matrícula: 2015207678 Programa não

Leia mais

Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces

Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces 0 Unidade: Classes Abstratas, Polimorfismo, Sobreposição e Interfaces Classes Abstratas À medida que você sobe na hierarquia de herança,

Leia mais

Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO

Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO Programação Orientada a Objetos HERANÇA E COMPOSIÇÃO Renato Dourado Maia Universidade Estadual de Montes Claros Engenharia de Sistemas Unidade IV Unidade IV Herança e Composição: Herança simples. Composição.

Leia mais

UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos

UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos UNIDADE 5 Aplicação dos Conceitos de Orientação a Objetos Objetivo da Unidade*: Conhecer e aplicar os conceitos mais importantes associados a orientação a objetos. 5.1 Métodos e atributos estáticos Atributos

Leia mais

char* prefixo (char* str, int n);

char* prefixo (char* str, int n); Departamento de Informática PUC-Rio INF1620 - Estruturas de Dados Segunda Lista de Exercícios 2005.1 1. Implemente uma função que receba uma string e um número inteiro n como parâmetros, e retorne uma

Leia mais