Linguagem de Programação C++
|
|
|
- Maria Clara Casqueira Dinis
- 8 Há anos
- Visualizações:
Transcrição
1 Exercício: Linguagem de Programação C++ Construa o diagrama de classes UML para as classes envolvidas na solução do exercício do slide
2 Sobrecarga Linguagem de Programação C++ Neste exercício vimos a sobrecarga de funçõesmembros, mais especificamente, a sobrecarga da função-membro construtor. Conforme vimos anteriormente, a sobrecarga é um conceito relacionado ao polimorfismo e ocorre quando o nome (ou símbolo) de mais de um método (ou operador) definidos na mesma classe são o mesmo. Neste caso, se diz que o nome (ou símbolo) está sobrecarregado, mais adiante aprofundaremos a exploração deste conceito. 268
3 Linguagem de Programação C++ Detalhe sobre alocação dinâmica (new) 269 Em C++, quando é efetuada a alocação dinâmica de memória para armazenar um objeto de uma classe qualquer, o construtor desta classe é evocado para inicializar a área alocada. Por exemplo: #include data.h... Data *p1 = new Data; No exemplo acima o construtor padrão é chamado. Também existe a possibilidade de passarmos argumentos, para um construtor que os tolere, por exemplo: #include data.h... Data *p2 = new Data(21, 12, 2012);
4 Linguagem de Programação C++ Exercício: Como podemos perceber, na solução apresentada para o exercício do slide 253 não foram utilizadas funções set e get. Analise a solução proposta e, caso julgue necessário, a adapte introduzindo as funções set e get que você julgar pertinente para a solução em questão. 270
5 Linguagem de Programação C++ Funções amigas Em algumas situações pode ser mais cômodo (embora, em geral, isto deva ser evitado) permitir que uma função tenha acesso a membros de dados privados de uma classe, mesmo não sendo tal função uma função-membro da classe. Para tanto, pode-se especificar esta função externa como amiga (friend) da classe em questão, prefixando seu protótipo na declaração da classe como friend. Uma mesma função pode ser amiga de mais de uma classe. Para uma melhor compreensão analisaremos agora um exemplo. 271
6 //exemplo de função amiga #include <iostream> using namespace std; class Dois; //especificação antecipada class Um public: friend void show (Um &p, Dois &q); void init (int a, float b); private: int k; float x; ; class Dois public: friend void show (Um &p, Dois &q); void inicial (int p1, float p2); private: int campo1; float campo2; ; 272
7 //exemplo de função amiga - continuação void Um::init (int a, float b) k=a; x=b; void Dois::inicial (int p1, float p2) campo1=p1; campo2=p2; void show (Um &p, Dois &q) cout << Dados Classe Um: << endl; cout << k = << p.k << endl << x = << p.x << endl; cout << Dados Classe Dois: << endl; cout << campo1 = << q.campo1 << endl << campo2 = << q.campo2 << endl;... Um o1; Dois o2; show (o1, o2); 273
8 Linguagem de Programação C++ Funções amigas Observe que a função show é uma função comum, não membro de classe. Normalmente, ela não teria acesso aos membros privados de objetos de qualquer classe. No entanto, como amiga das classe Um e Dois pode operar sobre membros de dados destas classes. Isto constitui uma violação do princípio do encapsulamento, mas com este comportamento torna-se pelo menos mais fácil obter certas soluções (como no caso da sobrecarga de operadores stream). Por convenção as declarações friends aparecem em primeiro lugar na definição de classe. 274
9 Linguagem de Programação C++ Funções amigas Diagrama UML 275
10 276 Linguagem de Programação C++ Ponteiro this É interessante frisar que, no contexto das funções membros que trabalhamos, estas sempre têm acesso aos membros de dados dos objetos da classe. Porém, como estas determinam de qual dentre os objetos da classe devem manipular os parâmetros? Isto é possível porque toda função-membro de uma classe tem um parâmetro adicional, oculto, implicitamente declarado pelo compilador, que, na invocação, recebe uma referência ao objeto receptor. Vamos analisar um exemplo: #include <iostream> using std::cout; using std::endl; class Teste public: Teste( int = 0 ); void imprime(); private: int x; ;
11 Teste::Teste( int valor ) : x( valor ) void Teste::imprime() cout << " x = " << x; cout << "\n this->x = " << this->x; cout << "\n(*this).x = " << ( *this ).x << endl; int main() Teste objetoteste( 12 ); 277 objetoteste.imprime(); return 0; Ou seja, tudo se passa como no exemplo anterior, como se a função membro imprime() tivesse sido assim declarada: void Teste::imprime(Teste *this) cout << " x = " << x; cout << "\n this->x = " << this->x; cout << "\n(*this).x = " << ( *this ).x << endl;
12 O principal uso do ponteiro this é nas funções membros que retornam uma referência para o próprio objeto receptor. Este tipo de utilização permite a chamada de função membro em cascata. Vamos analisar um exemplo: //conteúdo do arquivo horario.h #ifndef HORARIO_H #define HORARIO_H class Horario public: 278 Horario( int = 0, int = 0, int = 0 ); Horario &sethorario( int, int, int ); Horario &sethora( int ); Horario &setminuto( int ); Horario &setsegundo( int ); int gethora(); int getminuto(); int getsegundo(); void imprime(); private: int hora; int minuto; int segundo; ; #endif
13 //conteúdo do arquivo horario.cpp #include <iostream> using std::cout; #include <iomanip> using std::setfill; using std::setw; #include "horario.h" Horario::Horario( int hor, int min, int seg ) sethorario( hor, min, seg ); Horario &Horario::setHorario( int h, int m, int s ) sethora( h ); setminuto( m ); setsegundo( s ); return *this; Horario &Horario::setHora( int h ) hora = ( h >= 0 && h < 24 )? h : 0; return *this; Horario &Horario::setMinuto( int m ) minuto = ( m >= 0 && m < 60 )? m : 0; 279 return *this;
14 Horario &Horario::setSegundo( int s ) segundo = ( s >= 0 && s < 60 )? s : 0; return *this; int Horario::getHora() return hora; int Horario::getMinuto() return minuto; int Horario::getSegundo() return segundo; void Horario::imprime() cout << setfill( '0' ) << setw( 2 ) << hora << ":" << setw( 2 ) << minuto << ":" << setw( 2 ) << segundo; 280
15 //conteúdo do arquivo principalhorario.cpp #include <iostream> using std::cout; using std::endl; #include "horario.h" int main() Horario t; t.sethora( 18 ).setminuto( 30 ).setsegundo( 22 ); cout << Horario: "; t.imprime(); cout << endl << endl << Novo horario: "; t.sethorario( 20, 20, 20 ).imprime(); cout << endl; return 0; 281
16 Herança: Linguagem de Programação C++ Como vimos anteriormente, um tipo de dado definido como classe pode dar origem a outro tipo mediante o mecanismo de derivação por especialização denominado herança. Através dele, uma nova classe pode ser definida aproveitando-se o que uma classe já tem, acrescendo-se detalhes de modo a especializar a descrição (torná-la menos abstrata, mais detalhada). A linguagem C++ disponibiliza a possibilidade de implementarmos este conceito da OO. Para uma compreensão adequada analisaremos um exemplo. 282
17 Linguagem de Programação C++ Herança (continuação): Exemplo: Em uma determinada aplicação de aviação temos a classe denominada Aviao. Esta tem definido em si uma função membro denominado curva, além de um construtor, funções set e get, e um membro de dados denominado curso. A classe Aviao trata de atividades ou informações pertinentes a qualquer tipo de máquina voadora. Através dela, uma nova classe pode ser definida aproveitando-se o que esta classe já tem, acrescendo-se detalhes de modo a especializar a descrição (torná-la menos abstrata, mais detalhada). Veremos agora dois arquivos, um com a interface e outro com a implementação das funções membros da classe Aviao. 283
18 Linguagem de Programação C++ // conteúdo do arquivo aviao.h #ifndef AVIAO_H #define AVIAO_H class Aviao public: ; #endif Aviao (void); void setcurso (int); int getcurso (void); void curva (int); private: int curso; 284
19 285 Linguagem de Programação C++ // conteúdo do arquivo aviao.cpp #include aviao.h Aviao::Aviao (void) setcurso(0); void Aviao::setCurso (int graus) curso = graus; int Aviao::getCurso (void) return curso; void Aviao::curva (int graus) setcurso(getcurso () + graus);
20 Linguagem de Programação C++ Herança (continuação): Porém a tipos especiais de aviões que executam atividades especiais e requerem informações especiais. Por exemplo, um planador executa atividades especiais como soltar o cabo que o reboca e consequentemente tem que registrar a informação referente ao cabo de reboque, se este está ou não ligado (conectado) nele. Logo, podemos definir uma nova classe Planador derivada da classe Aviao. Planador terá, além das funções get e set, uma função membro denominada soltarcabo e um membro de dados denominado seconectado. 286
21 287 Linguagem de Programação C++ // conteúdo do arquivo maqvoadoras.h #ifndef MAQVOADORAS_H #define MAQVOADORAS_H class Aviao public: Aviao (void); void setcurso (int); int getcurso (void); void curva (int); private: int curso; ; class Planador:Aviao public: void setseconectado (char); char getseconectado (void); void soltarcabo(void); private: char seconectado; ; #endif
22 Linguagem de Programação C++ // conteúdo do arquivo maqvoadoras.cpp #include maqvoadoras.h Aviao::Aviao (void) setcurso(0); void Aviao::setCurso (int graus) curso = graus; int Aviao::getCurso (void) return curso; void Aviao::curva (int graus) setcurso(getcurso () + graus); 288
23 Linguagem de Programação C++ void Planador::setSeConectado (char estado) seconectado = estado; char Planador::getSeConectado (void) return seconectado; void Planador::soltarCabo() setseconectado(0); 289
24 Exercício: Linguagem de Programação C++ Construa um programa driver que se utilize das classes definidas explorando suas interfaces. 290
25 291 Linguagem de Programação C++ Herança (continuação): Os objetos da classe Planador, herdam da classe Aviao suas funções membros e seus membros de dados, contudo, em C++, existem os especificadores de modo acesso, os quais vimos anteriormente e neste ponto aprofundaremos nossa análise sobre estes. Se em nosso exemplo anterior, implementarmos uma função membro imprimircurso na classe Planador e esta tentar manipular diretamente o membro de dados curso, ou seja:... void Planador::imprimirCurso() cout << curso; // int Aviao::curso is private
26 Linguagem de Programação C++ Herança (continuação): Outra observação necessária é quanto às funções membros herdadas. Com a definição das classes vistas anteriormente, um objeto da classe Planador não pode atender a mensagem curva, ou seja, se em um programa driver constar o seguinte trecho de código:... int main()... Planador p1; p1.curva(180); /* void planador:: curva(int) is inaccessible */
27 Linguagem de Programação C++ Herança (continuação): Sempre que desejarmos que um membro de dados ou uma função membro de uma superclasse não se torne oculto em suas subclasses devemos especificar este não como private mas sim como protected. Em nosso exemplo, devemos fazer: class Aviao public:... protected: int curso; ; 293
28 294 Linguagem de Programação C++ Herança (continuação): Neste caso, o membro de dados curso torna-se privado na classe deriva (Planador), podendo ser manipulado pelas funções membros da mesma e a função membro curva torna-se uma função membro privada da classe Planador, podendo ser utilizada da seguinte forma: class Planador:Aviao... public: void curvaplanador(int); ;... void Planador::curvaPlanador(int c) curva(c);
29 Linguagem de Programação C++ Herança (continuação): Isto ocorre em função do especificador de acesso assumido por omissão ser o private, ou seja, é como se tivéssemos derivado Aviao da seguinte forma: class Planador: private Aviao... ; Neste caso, como vimos, todos os membros de dados e funções membros privadas da superclasse são herdados como ocultos e os protegidos e públicos são herdados como privados. 295
30 Linguagem de Programação C++ Herança (continuação): Os outros especificadores de acesso (protected e public) podem ser utilizados no processo de derivação, gerando os seguintes efeitos: O protected especifica que todos os membros protegidos e públicos da classe base tornam-se protegidos na classe derivada. Ou seja, as funções membros da classe derivada têm acesso aos membros de dados originalmente protegidos ou públicos da classe base, mas os membros de dados públicos não mais serão visíveis externamente. 296
31 Linguagem de Programação C++ Herança (continuação): Ao utilizarmos o public: class planador: public aviao... ; 297 Poderíamos fazer:... Planador p1; p1.curva(180);... Pois, public estabelece que todos os membros protegidos e públicos da classe base mantêm sua condição na classe derivada. Este é o método de recepção mais usado, por ser o mais intuitivo. Usa-se protected ou private quando se deseja restringir o acesso às classes derivadas.
32 Linguagem de Programação C++ Herança (continuação): Observação: membros de classe com especificador de acesso private, sempre são herdados como ocultos. 298
33 Exercício: Linguagem de Programação C++ Com base na classe Ponto2D, complemente o arquivo cabeçalho especificado anteriormente, definindo uma nova classe denominada Circulo, que além dos membros de dados herdados de Ponto2D, terá o membro de dados raio e deve ser capaz de receber todas as mensagens definidas em Ponto2D e ainda as mensagem area e pontopertenceaocirculo. Construa um programa driver que se utilize adequadamente de objetos instanciados de ambas as classes, explorando totalmente suas interfaces, exceto as funções sets e gets. 299
//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();
Linguagem de Programação C++ Se analisarmos a manipulação do objeto c, efetuada no exercício anterior, e compararmos com o que acontece em um banco
168 Linguagem de Programação C++ Se analisarmos a manipulação do objeto c, efetuada no exercício anterior, e compararmos com o que acontece em um banco real no momento da abertura de uma conta, perceberemos
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
Laboratório de programação II
Laboratório de programação II Herança e Polimorfismo Edson Moreno [email protected] http://www.inf.pucrs.br/~emoreno Herança Mecanismo da Orientação a Objeto que permite criar novas classes aproveitando
Linguagem de Programação I
Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB [email protected] Herança simples Composição Combinando composição e herança Polimorfismo e funções virtuais Classes abstratas
Técnicas de Programação:
Técnicas de Programação: Programação Orientada a Objeto PROF. PROTÁSIO DEE-UFPB Classes e Objetos Classe É uma estrutura de dados que pode conter: Objeto Dados, e Funções. É uma instância de uma classe.
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
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
Introdução à Programação Orientada a Objetos em C++
Introdução à Programação Orientada a Objetos em C++ Disciplina de Programação Científica II Aula 12 de 18 24/05/2013 Professor Giovani Gracioli [email protected] Objetivos Os objetivos dessa aula são:
Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores. Prof.: Bruno E. G. Gomes IFRN
Programação Orientada a Objetos Aula I Declaração de classes, métodos construtores Prof.: Bruno E. G. Gomes IFRN 1 Introdução Na aula de hoje: Declaração de classes Métodos Construtores Exercícios de criação
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
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,
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)
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
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
Herança. BCC702-Programação de Computadores II Emiliana Mara Lopes Simões Universidade Federal de Ouro Preto abril 2010
Herança BCC702-Programação de Computadores II Emiliana Mara Lopes Simões [email protected] Universidade Federal de Ouro Preto abril 2010 Herança Uma característica importante da programação orientada
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
Encapsulamento. Alberto Costa Neto DComp - UFS
Encapsulamento Alberto Costa Neto DComp - UFS 1 Motivação O que aprendemos até agora? O que diferencia a POO da Programação Imperativa? Estas informações são suficientes para construir um projeto OO eficiente?
Programação Orientada a Objetos. Professor: André Luis Meneses Silva br.geocities.com/programacao2ufs
Programação Orientada a Objetos Professor: André Luis Meneses Silva [email protected] br.geocities.com/programacao2ufs [ Conteúdo ] Objeto Mensagens Classe Encapsulamento Visibilidade Membros de Instância
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++ - Classes e Objetos (Continuação) Empacotador de Pré-processador
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
Prof. Jhonatan Fernando
Prof. Jhonatan Fernando Métodos Programação OO Instâncias de variáveis (objetos) Mensagens Classes Herança Polimorfismo Encapsulamento Abstração Programação Estruturada Procedimentos e funções Variáveis
# Estrutura de Dados # Aula - Revisão de C/C++ na Prática. Prof. Leinylson Fontinele Pereira
# Estrutura de Dados # Aula - Revisão de C/C++ na Prática Prof. Leinylson Fontinele Pereira Na aula anterior... Ponteiros Funções Introdução 3 O que vamos aprender? Preparação do ambiente de testes Conceitos
Carlos Eduardo Batista. Centro de Informática - UFPB
Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB [email protected] Motivação para o uso de C++ para o aprendizado de POO Quando usar C e quando usar C++ C++ versus Java Ambientes
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
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
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
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
Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira Anilton Joaquim da Silva
Algoritmos e Programação de Computadores Profs: Ronaldo Castro de Oliveira [email protected] Anilton Joaquim da Silva [email protected] Matrizes Uma matriz é uma variável capaz de armazenar vários dados de
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(){
Java para Desktop. Programação Orientada à Objetos 2 JSE
Java para Desktop Programação Orientada à Objetos 2 JSE Encapsulamento significa "ocultar informações, ele define que cada objeto contém todos os detalhes de implementação necessários sobre como ele funciona
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
Classe Abstrata e Interface
Orientação a objetos com Java Classe Abstrata e Interface Byron Leite [email protected] 1 Herança Agenda Geral Parte 04 Encapsulamento Pacotes Modificadores de Acesso private, default, protected, public
Aula 17: Funções (Parte III) e Introdução a Vetores
Aula 17: Funções (Parte III) e Introdução a Vetores Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aula de Hoje 1 Exemplos
Introdução à orientação a objetos. João Tito Almeida Vianna 18/05/2013
Introdução à orientação a objetos João Tito Almeida Vianna 18/05/2013 Roteiro Aula 1 Introdução: Programação estruturada x Orientação a objetos Orientação a objetos Classe e objeto Encapsulamento Herança
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
Linguagens de Programação Aula 12
Linguagens de Programação Aula 12 Celso Olivete Júnior [email protected] Na aula passada Implementando subprogramas 2 Na aula de hoje Suporte para a programação orientada a objetos 3 Roteiro Introdução
Programação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -
Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes [email protected] 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes
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 [email protected] Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;
Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.
Computação L2 Linguagem C++ [email protected] Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);
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.
Fundamentos de Programação
Fundamentos de Programação Linguagem C++: arrays - aula I Bruno Emerson Gurgel Gomes 1 1 Instituto Federal de Educação, Ciência e Tecnologia do RN (IFRN) 2012 Bruno Gomes (IFRN) Fundamentos de Programação
Aula 14: Funções Passagem de Parâmetros por Referência
CI208 - Programação de Computadores Aula 14: Funções Passagem de Parâmetros por Referência Prof. MSc. Diego Roberto Antunes [email protected] www.inf.ufpr.br/diegor Universidade Federal do Paraná Setor
Classes e Objetos INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II. Classes. Objetos. Um modelo para a criação de objetos
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS COM JAVA - MÓDULO II Classes e Objetos Objetos Um conjunto de estados e comportamentos Classes Um modelo para a criação de objetos 1 Pacotes e Java API Pacotes Um conjunto
Fundamentos de Programação. Linguagem C++ Introdução, identificadores, tipos de dados. Prof. Bruno E. G. Gomes IFRN
Fundamentos de Programação Linguagem C++ Introdução, identificadores, tipos de dados Prof. Bruno E. G. Gomes IFRN 1 Linguagem de Programação Constituída por símbolos e por regras para combinar esses símbolos
Programação OO em Java. Profa Andréa Schwertner Charão DELC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DELC/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
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
Fundamentos de Programação 2
Fundamentos de Programação 2 ET43G. Polimorfismo. Classes abstratas e interfaces. Aula 12 Prof. Daniel Cavalcanti Jeronymo Universidade Tecnológica Federal do Paraná (UTFPR) Engenharia Eletrônica 3º Período
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
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++ - Classes e Objetos Linguagem de Programação C++ Linguagem
Classes e Objetos. Prof. Leonardo Barreto Campos 1
Classes e Objetos Prof. Leonardo Barreto Campos 1 Sumário Introdução; Escopo de Classe e Acesso a Membros de Classes; Exercício; Os Métodos get e set; Separação de Interface e Implementação; Construtores
Aula 01 Algoritmos e lógica de programação e introdução ao C++
Aula 01 Algoritmos e lógica de programação e introdução ao C++ Autor: José Martins de Castro Neto Carga Horária: 2h 21 de julho de 2015 1 Algoritmo e lógica de programação Ementa do curso 1. Definições
Instituto Federal de Educação, Ciência e Tecnologia do RN Câmpus Currais Novos. LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I
LINGUAGEM C++ VARIÁVEIS COMPOSTAS Arrays Aula I Prof. Bruno E. G. Gomes Uma variável em um algoritmo pode ser vista como uma gaveta. A declaração de uma variável reserva uma gaveta (posição) de um certo
Estrutura de dados 1. Ponteiros
Estrutura de dados 1 Ponteiros Ponteiros Um ponteiro é um endereço de memória O valor de um ponteiro indica onde uma variável está armazenada Um ponteiro proporciona um modo de acesso a uma variável sem
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
Programação Java (nível intermediário) 4. Polimorfismo
Programação Java (nível intermediário) 4 Polimorfismo Introdução Uma linguagem orientada a objetos nos permite definir novos tipos para variáveis Nós definimos um novo tipo através de uma classe Este tipo
Introdução à Programação. Conceitos Básicos de Orientação a Objetos
Introdução à Programação Conceitos Básicos de Orientação a Objetos Tópicos da Aula Aprenderemos fundamentos do paradigma orientado a objetos, mas antes veremos o que é paradigma Conceito de paradigma Diferentes
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
