Conceito de classe em C++
|
|
|
- Jorge Taveira Pais
- 9 Há anos
- Visualizações:
Transcrição
1 Introdução à Programação com Classes em C++ João Pascoal Faria (versão original) Ana Paula Rocha (versão 2004/2005) FEUP - LEEC - AED /2005 Conceito de classe em C++ Classe em sentido lato: tipo de dados definido pelo utilizador (programador) [Stroustrup] inclui enumerações (enum), uniões (union), estruturas (struct) e classes em sentido estrito (class) tipos de dados definidos em bibliotecas standard são classes tipos de dados built-in ou construídos com apontadores, arrays ou referências (mesmo que nomeados com typedef) não constituem classes Classe em sentido estrito: tipo de dados definido com class é uma generalização do conceito de estrutura em C Para além de dados (membros-dados), uma classe pode também conter funções de manipulação desses dados (membros-funções), restrições de acesso a ambos (dados e funções) e redefinições de quase todos os operadores de C++ para objectos da classe 2
2 Classe Conceito de classe em C++ novo tipo de dados que pode ser usado de forma semelhante aos tipos de dados built-in Um tipo de dados é uma representação concreta de um conceito Exemplo: o tipo float (built-in) de C++ com as suas operações +, -, *, etc., proporciona um aproximação concreta ao conceito matemático de número real Os detalhes da representação interna de um float (1 byte para a expoente, 3 bytes para a mantissa, etc.) são escondidos 3 Conceito de classe em C+ Novos tipos de dados projectados para representar conceitos da aplicação que não têm representação directa nos tipos built-in Exemplo: tipo Data Interessa poder usar os operadores -, ==, +=, <<, >>, etc. para subtrair, comparar, incrementar, escrever e ler datas sobrecarga (overloading) de operadores Interessa poder esconder os detalhes da representação interna de uma data (três inteiros para o dia, mês e ano, ou um único inteiro com o número de dias decorridos desde uma data de referência) encapsulamento Outro Exemplo: tipo IntCell objecto que representa um inteiro 4
3 Classe e objectos Conceito de objecto em sentido lato: região de armazenamento capaz de albergar um valor de um dado tipo inclui variáveis, objectos alocados dinamicamente, objectos temporários que são produzidos durante a avaliação de expressões, etc. Conceito de objecto em sentido estrito: instância de uma classe em vez de variáveis (do tipo T) fala-se em objectos (da classe ou tipo T) Um objecto tem identidade, estado e comportamento A identidade é representada pelo endereço do objecto (ver apontador this) O estado é representado pelos valores dos membros-dados (também chamados atributos noutras linguagens) O comportamento é descrito pelos membros-função (também chamados métodos noutras linguagens), incluindo funções que definem operadores 5 #include <iostream.h> Membros class Data membros-dados int dia; int mes; int ano; void escreve() cout << dia << '/' << mes << '/' << ano; void le() char barra1, barra2; cin >> dia >> barra1 >> mes >> barra2 >> ano; ; main() Data d = 1, 12, 2000; d.escreve(); d.le(); d.escreve(); return 0; membros-função membro do objecto a que se refere a chamada da função um membro-função é chamada para um objecto da classe, com operadores de acesso a membros 6
4 Membros-função As funções definidas dentro da classe (como no slide anterior), são implicitamente inline Funções maiores devem ser apenas declaradas dentro da classe, e definidas fora da mesma, precedendo o nome da função do nome da classe seguido do operador de resolução de âmbito :: A função vê os membros da classe da mesma forma, quer seja definida dentro ou fora da classe Permite separar o interface (o que interessa aos clientes da classe, normalmente colocado em "header files") da implementação (normalmente colocada em "sourcecode files") // Interface (data.h) class Data int dia, mes, ano; void escreve(); void le(); ; // Implementação (data.cpp) void Data::escreve() cout << dia << '/' << mes << '/' << ano; void Data::le() char barra1, barra2; cin >> dia >> barra1 >> mes >> barra2 >> ano; 7 Controlo de acesso a membros class Data função // funções de escrita (set) void setdia(int d) if (d >= 1 && d <= 31) dia = d; void setmes(int m) if (m >= 1 && m <= 12) mes = m; void setano(int a) if (a >= 1 && a <= 9999) ano = a; // funções de leitura (get) int getdia() return dia; int getmes() return mes; int getano() return ano; Os membros seguintes são visíveis por qualquer Facilita manutenção da integridade dos dados! Permite esconder detalhes de implementação que não interessam aos clientes da classe! private: Os membros seguintes só são visíveis pelos int dia; // 1-31 int mes; // 1-12 membros-função e amigos da classe int ano; // ;... Data d; d.dia = 21; /* PROIBIDO! */; d.setdia(21); /* OK */ 8
5 Diferença entre estruturas e classes Numa estrutura (definida com palavra chave struct) todos os membros são públicos por omissão Numa classe (definida com palavra chave class) todos os membros são privados por omissão De resto são equivalentes 9 Exemplo : IntCell #ifndef _IntCell_H_ #define _IntCell_H_ // a class for simulating an integer memory cell class IntCell explicit IntCell (int initialvalue = 0); int read() const; void write(int x); private: int storedvalue; ; #endif Interface ficheiro IntCell.h 10
6 Exemplo : IntCell #include IntCell.h // Construct the IntCell with initialvalue IntCell::IntCell(int initialvalue) : storedvalue(initialvalue) // Return the stored value int IntCell:: read() const return storedvalue; // Store x void IntCell::write(int x) storedvalue = x; Implementação ficheiro IntCell.cpp 11 #include IntCell.h Exemplo : IntCell int main() IntCell m; m.write(5); cout << Cell contents: << m.read() << endl; return 0; Teste 12
7 Construtores Um membro-função com o mesmo nome da classe é um construtor construtores não podem especificar tipos ou valores de retorno O construtor serve normalmente para inicializar os membros-dados podem-se definir construtores com argumentos para receber valores a usar na inicialização Construtores podem ser overloaded desde que difiram em número ou tipos de argumentos para se poder saber a que versão corresponde cada chamada implícita ou explícita 13 Construtores O construtor é invocado automaticamente sempre que é criado um objecto da classe para objectos globais, o construtor é chamado no início da execução do programa para objectos locais (automáticos ou estáticos), o construtor é chamado quando a execução passa pelo ponto em que são definidos Construtores também podem ser invocados explicitamente 14
8 #include <stdio.h> Exemplo com construtores //para usar sscanf class Data Data(int d, int m, int a=2000); // um construtor Data(char *s); // outro construtor //... private: int dia, mes, ano; ; Data::Data(int d, int m, int a) dia = d; mes =m; ano = a; Data::Data(char *s) // formato dia/mes/ano sscanf(s, "%d/%d/%d", &dia, &mes, &ano); void f(data d); Data d1 ("27/3/2000"); // OK - chama Data(char *) Data d2 (27, 3, 2000); // OK - chama Data(int, int, int) Data d3 (27, 3); // OK - chama Data(int, int, int) c/ a=2000 Data d4; // Erro: não há construtor sem argumentos Data d5 = 27,3,2000; // Erro: ilegal na presença de construtores d1 = Data(1,1,2000); // OK (chamada explícita de construtor) f(data(27,3,2000)); // OK (chamada explícita de construtor) 15 Objectos e membros constantes (const) Aplicação do princípio do privilégio mínimo (Eng. de Software) aos objectos Objecto constante: declarado com prefixo const especifica que o objecto não pode ser modificado como não pode ser modificado, tem de ser inicializado exemplo: const Data nascbeethoven (16, 12, 1770); não se pode chamar membro-função não constante sobre objecto constante Membro-função constante: declarado com sufixo const (a seguir ao fecho de parêntesis) especifica que a função não modifica o objecto a que se refere a chamada Membro-dado constante: declarado com prefixo const especifica que não pode ser modificado (tem de ser inicializado) 16
9 Inicializadores de membros Quando um membro-dado é constante, um inicializador de membro (também utilizável com dados não constantes) tem de ser fornecido para dar ao construtor os valores iniciais do objecto class Pessoa Pessoa(int, int); long getidade() const; private: //... int idade; const long BI; ; // construtor // função constante // dado constante Pessoa::Pessoa(int i, long bi) : BI(bi) // inicializador de membro ^^^^^^^^,... idade = i; long Pessoa::getIdade() const return idade; 17 Membros estáticos (static) Membro-dado estático (declarado com prefixostatic): variável que faz parte da classe, mas não faz parte dos objectos da classe tem uma única cópia (alocada estaticamente) (mesmo que não exista qualquer objecto da classe), em vez de uma cópia por cada objecto da classe permite guardar um dado pertencente a toda a classe parecido com variável global, mas possui âmbito (scope) de classe tem de ser declarado dentro da classe (com static) e definido fora da classe (sem static), podendo ser inicializado onde é definido 18
10 Membros estáticos (static) Membro-função estático (declarado com prefixostatic): função que faz parte da classe, mas não se refere a um objecto da classe (identificado por apontador this nas funções não estáticas) só pode aceder a membros estáticos da classe Referência a membro estático (dado ou função): sem qualquer prefixo, a partir de um membro-função da classe, ou com operadores de acesso a membros a partir de um objecto da classe, ou com nome-da-classe::nome-do-membro-estático 19 Exemplo com membros estáticos class Factura Factura(float v = 0); long getnumero() const return numero; float getvalor() const return valor; static long getultimonumero() return ultimonumero; private: const long numero; float valor; static long ultimonumero; // declaração ; long Factura::ultimoNumero = 0; // definição Factura::Factura(float v) : numero(++ultimonumero) valor = v; 20
11 Exemplo com membros estáticos // Programa de teste main() Factura f1(100), f2(200), f3; cout << "n=" << f1.getnumero() << " v=" << f1.getvalor() << endl; cout << "n=" << f2.getnumero() << " v=" << f2.getvalor() << endl; cout << "n=" << f3.getnumero() << " v=" << f3.getvalor() << endl; cout << "ultimo numero=" << Factura::getUltimoNumero() << endl; return 0; Resultados produzidos pelo programa de teste: n=1 v=100 n=2 v=200 n=3 v=0 ultimo numero=3 21
Conceito de classe em C++
Introdução à Programação com Classes em C++ João Pascoal Faria (versão original) Ana Paula Rocha (versão 2004/2005) Luís Paulo Reis (versão 2005/2006) FEUP - MIEEC Prog2-2006/2007 Conceito de classe em
Conceito de classe em C++
Introdução à Programação com Classes em C++ Ana Paula Rocha, Luís Paulo Reis, João Pascoal Faria FEUP - MIEEC Programação 2-2008/2009 Conceito de classe em C++ Classe em sentido lato: tipo de dados definido
Introdução à Programação com Classes em C++
1 FEUP/LEEC/AED/2001-2002 Introdução à Programação com Classes em C++ João Pascoal Faria http://www.fe.up.pt/~jpf FEUP/LEEC/AED/ 2000-2001 Conceito de classe em C++ 2 Classe em sentido lato: tipo de dados
Composição de classes
Programação com Classes em C++ (cont.) FEUP - MIEEC Programação 2-2008/2009 Composição de classes Uma classe pode ter como membros objectos doutras classes Membros-objecto são inicializados antes dos objectos
INTRODUÇÃO À PROGRAMAÇÃO II VARIÁVEIS COMPOSTAS HOMOGÊNEAS UNIDIMENSIONAIS
INTRODUÇÃO À PROGRAMAÇÃO II VARIÁVEIS COMPOSTAS HOMOGÊNEAS UNIDIMENSIONAIS Material da Prof. Ana Eliza Dados e comandos, para serem processados, devem estar na memória do computador. Memória Definição:
Aula 3/4: Vetores/Matrizes e Ponteiros
Carlos Henrique/Introdução C++ Aula 3/4: Vetores/Matrizes e Ponteiros Funções: Função main (int argc, char ** argv) Recursão Vetores/Matrizes/Strings Vetor (Matriz Unidimensional) Gerando um ponteiro para
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
Tipos Abstratos de Dados (TAD)
Instituto de C Tipos Abstratos de Dados (TAD) Luis Martí Instituto de Computação Universidade Federal Fluminense [email protected] - http://lmarti.com Tópicos Principais Módulos e Compilação em separado
AULA 3 Alocação dinâmica de memória: Ponteiros
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA 3 Alocação dinâmica de memória: Ponteiros Estrutura de Dados 1 Variáveis X Ponteiros VARIÁVEL - Estrutura para armazenamento
Nº horas ESTRATÉGIAS RECURSOS AVALIAÇÃO
ANO: 10.º Curso Profissional Técnico de Informática de Gestão Disciplina: Linguagens de Programação ANO LECTIVO: 2008/2009 p.1/13 Módulo 1 Algoritmia 1 - Introdução à Lógica de Programação Lógica Sequência
Linguagem C. Introdução à Programação C. Variáveis. Identificadores. Identificadores 12/03/2011 VARIÁVEIS E TIPOS DE DADOS
Linguagem C Introdução à Programação C Introdução à Ciência da Computação I Prof. Denis F. Wolf Origem de C está associada ao sistema Unix Histórico: 1970: Ken Thompson desenvolve B, baseada em BCPL, para
Reader e Writer para streams de caracteres (texto).
Folha 1-1 Recordando POO: Streams Uma stream é uma abstracção que representa uma fonte genérica de entrada de dados ou um destino genérico para escrita de dados que é definida independentemente do dispositivo
Introdução a Banco de Dados. INTRODUÇÃO
INTRODUÇÃO O termo banco de dados é bastante popular em diversas áreas de atuação. Com o aumento da utilização de computadores na manipulação de dados que envolvem diversas aplicações, os bancos de dados
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
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
Conceitos básicos de programação
Tipos de dados estruturados Tipos estruturados vectores matrizes Estruturas (registos) Vectores e matrizes são estruturas homogéneas. Uma estrutura homogénea é uma sequência linear de elementos de mesmo
3. Linguagem de Programação C
Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação
Referências. Programação de Computadores II. Cap. 7 Cadeias de Caracteres. Caracteres. Tópicos
Referências Programação de Computadores II Cap. 7 Cadeias de Caracteres Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004) Capítulo 7 Livro: Waldemar
Programação Orientada a Objetos
Programação Orientada a Objetos Prof. Kléber de Oliveira Andrade [email protected] Objetos e Classes Programação Orientada ao Objeto O paradigma da Orientação ao Objeto é um mecanismo que ajuda a definir
Aula 6: Sobrecarga de Operadores e Herança
Aula 6: Sobrecarga de Operadores e Herança Sobrecarga de Operadores Definição Relacionamentos Generalização/Especialização Vínculo Agregação Herança Definições Representação UML Exemplos (Direto/Indireto)
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
Programação II. Tipos Estruturados. Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Tipos Estruturados Bruno Feijó Dept. de Informática, PUC-Rio Dados Compostos Até agora tipos simples: char, int, float,. Necessidade por dados compostos, por tipos estruturados Ex.: pontos
Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre
Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 02 Fundamentos de Linguagens Sumário : Linguagem, alfabeto e gramática
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
2. Tipos Abstratos de Dados
2. Tipos Abstratos de Dados Um Tipo Abstrato de Dados especifica uma classe de dados definida pelo usuário em termos de suas propriedades abstratas Esta especificação do TAD descreve o comportamento de
Linguagens de Programação Conceitos e Técnicas. Valores e Tipos de Dados
Linguagens de Programação Conceitos e Técnicas Valores e Tipos de Dados Conceituação Um valor é uma entidade que existe durante uma computação Valor (= Dado) 3 2.5 'a' Paulo 0x1F 026 Valores e Tipos de
Ficheiros binários 1. Ficheiros binários
Ficheiros binários 1 Ficheiros binários 1. Considere que dispõe de ficheiros binários cujo conteúdo é constituído por uma ou mais estruturas como a indicada a seguir struct registo { }; int ref; float
Redefinição de Operadores
Sobrecarga de Operadores em C++ Algoritmos e Estruturas de Dados 2008/2009 Mestrado Integrado em Engenharia Informática e Computação Redefinição de Operadores Quase todos os operadores podem ser redefinidos:
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
Programação de Computadores I. Linguagem C Funçã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,
Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga
Linguagem de Programação Orientada a Objeto Construtores e Sobrecarga Professora Sheila Cáceres Sobrecarga (overloading) Na mesma classe podemos definir vários métodos com o mesmo nome Sobrecarga O tipo
ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes
ITENS FUNDAMENTAIS Profª Angélica da Silva Nunes CONCEITOS BÁSICOS Hardware - é a parte física do computador, tais como: teclado, monitor de vídeo, etc. Software - são os programas e aplicativos que permitem
C++ - Funções. Forma geral das funções C++
C++ - Funções Conjunto de instruções para executar uma tarefa particular, agrupadas numa unidade com um nome para referenciá-las. O código é agregado ao programa uma única vez e pode ser executado muitas
Conceitos c++ Prof. Demétrios Coutinho INFORMÁTICA BÁSICA
INFORMÁTICA BÁSICA Conceitos c++ Prof. Demétrios Coutinho C a m p u s P a u d o s F e r r o s D i s c i p l i n a d e O r g a n i z a ç ã o d e A l g o r i t m o s D e m e t r i o s. c o u t i n h o @
Estrutura de Dados Funções e Procedimentos
Estrutura de Dados Funções e Procedimentos Prof. Salustiano Rodrigues de Oliveira [email protected] www.profsalu.wordpress.com Java A linguagem Java utiliza o paradigma de programação orientada
GUIA DE ESTILO DE PROGRAMAÇÃO EM JAVA
Introdução GUIA DE ESTILO DE PROGRAMAÇÃO EM JAVA Prof. F. Mário Martins DI/UM 2008-2009 Este documento tem por objectivo fundamental estabelecer um conjunto de normas, quase universais, sobre a melhor
Ciclo com Contador : instrução for. for de variável := expressão to. expressão do instrução
Métodos de Programação I 2. 27 Ciclo com Contador : instrução for identificador downto for de variável := expressão to expressão do instrução UMA INSTRUÇÃO (SIMPLES OU COMPOSTA) Neste caso o ciclo é repetido
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
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.
Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação
Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada
Linguagem de Programação C. Fluxo de Saída Padrão. Linguagem de Programação C. printf. Fluxo de Saída Padrão. Algoritmos e Lógica de Programação
Algoritmos e Lógica de Programação Linguagem de Programação C Linguagem C Entrada e Saída de dados Reinaldo Gomes [email protected] Fluxo de Saída Padrão Saída Formatada: ( ) Tem a função de
Linguagem de Programação C++
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 253. 267 Sobrecarga Linguagem de Programação C++ Neste exercício vimos
Isto não é exequível!... B[8][6] A[10] Slides_Java_4
A[10] B[8][6] Slides_Java_4 Sistemas Informáticos I 2005-2006 Imaginemos que é necessário escrever um programa que: leia uma lista de 50 alunos e as respectivas notas. calcule a nota média. escreva a diferença
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)
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 DE COMPUTADORES I
PROGRAMAÇÃO DE COMPUTADORES I (Parte 2) Prof. Eduardo Machado Real Conteúdos: Variáveis Compostas Homogêneas: Vetores e Matrizes. Variáveis Compostas Heterogêneas: Registros. Programação de Computadores
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;
Linguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Linguagem C Ficheiros Compilação Separada
Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir
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
Programando em C++ Histórico da Linguagem C
Programando em C++ Joaquim Quinteiro Uchôa [email protected] DCC-UFLA, 2002 Programando em C++ p.1/38 Histórico da Linguagem C Linguagem C: 1972 - Laboratório Bells, por Dennis Ritchie, a partir da linguagem
Estruturas de Dados Aula 9: Listas (parte 1) 05/04/2011
Estruturas de Dados Aula 9: Listas (parte 1) 05/04/2011 Fontes Bibliográficas Livros: Projeto de Algoritmos (Nivio Ziviani): Capítulo 3; Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo
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
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem
Módulo IV Programação Visual Basic. Programação
Módulo IV Visual Basic 1 Vamos considerar os seguintes elementos e estruturas fundamentais que são habitualmente usados em programação: Tipos de Dados Operadores Atribuições Entrada e Saída de Dados Estruturas
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
1. Estrutura de Dados
1. Estrutura de Dados Não existe vitória sem sacrifício! Filme Transformers Um computador é uma máquina que manipula informações. O estudo da ciência da computação inclui o exame da organização, manipulação
MC-102 - Teste de Mesa e Comandos Repetitivos
MC-102 - Teste de Mesa e Comandos Repetitivos Elaborado por Raoni Teixeira e Editado por Danillo Roberto Pereira Instituto de Computação Unicamp Primeiro Semestre de 2013 Introdução Introdução Pode acontecer
03. [Sebesta, 2000] Descreva a operação de um gerador de linguagem geral.
01. [Sebesta, 2000] Defina sintaxe e semântica. 02. [Sebesta, 2000] A quem se destinam as descrições de linguagem? 03. [Sebesta, 2000] Descreva a operação de um gerador de linguagem geral. 04. [Sebesta,
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
Meta-Programação com. Julia Lima. Agosto 2010
Meta-Programação com Templates Julia Lima Agosto 2010 O que é Meta-programação Desenvolver um programa que gera um outro programa Meta-programas A linguagem usada para criar um metaprograma permite a manipulação
çã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,
Trabalho Prático II - Resta 1 Data de Entrega: Conferir no calendário!
ALGORITMOS E ESTRUTURAS DE DADOS I DCC/UFMG Trabalho Prático II - Resta 1 Data de Entrega: Conferir no calendário! Pedro O.S. Vaz de Melo May 29, 2013 1 DESCRIÇÃO DO PROBLEMA O objetivo deste trabalho
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
//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();
Classes o Objetos. Classes, objetos, métodos e variáveis de instância
Classes o Objetos Um recurso comum de cada aplicativo feito até agora é que todas as instruções que realizavam tarefas localizavam-se no método main. Se você tornar parte de uma equipe de desenvolvimento
LINGUAGEM JAVA - RESUMO
LINGUAGEM JAVA - RESUMO 1.1. Estrutura Geral de um Programa 1. ESTRUTURAS BÁSICAS public class nome do programa public static void main(string[] args) instruções do programa 1.2. Tipos Primitivos de Dados
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 [email protected] Relembre: Clase RoboSimples Os métodos move() e move(int passos) podem ser reescrito sem redundância de
