Figura 3.1 Modelo da programação estruturada
|
|
- Marcela Dreer Gomes
- 6 Há anos
- Visualizações:
Transcrição
1 3 - Conceitos de Orientação aos Objectos Hoje em dia, praticamente todo o software está a ser escrito numa ou noutra linguagem orientada aos objectos. As linguagens estruturadas como o C e o Pascal tiveram muito sucesso nos anos 70 e 80. Desde os anos 90 que a programação orientada aos objectos OOP (Object-Oriented Programming) ganhou especial relevância, dominando a indústria informática. Os exemplos mais familiares de linguagens orientadas aos objectos são o C++, o Java, o Delphi e o SmallTalk. Porquê esta mudança? As linguagens estruturadas têm um modelo de programação simples. Tipicamente, o programador pensa numa ou mais estruturas de dados que lhe modele o problema e, em seguida, desenvolve um conjunto de operações (funções) que actuam sobre essas estruturas de dados (figura 3.1). Figura 3.1 Modelo da programação estruturada Embora este modelo de desenvolvimento funcione bem para pequenos programas, existem sérios problemas quando a dimensão dos sistemas começa a aumentar. FCA - Editora de Informática 45
2 C# 2.0 O problema é que uma vez que todas as operações têm acesso a todos os dados, uma pequena modificação num dos módulos pode ter implicações em todo o programa. À medida que os programas crescem, torna-se muito difícil manter o código. É simples de constatar: mudar o nome de uma variável numa estrutura de dados pode implicar mudar o seu nome em milhares de linhas de código onde esta é utilizada. Vejamos um outro exemplo: se uma função pode alterar o valor de uma variável global, sem que o resto das funções tenham consciência ou esperem essa alteração, isso poderá levar a graves erros de funcionamento. Estes problemas são muito difíceis de retirar do código. Costuma-se dizer que neste tipo de arquitectura existe um elevado acoplamento entre módulos. A programação orientada aos objectos tenta aliviar alguns destes problemas. A ideia principal é diminuir o acoplamento entre os diversos módulos. Para isso, cada uma das estruturas de dados é encapsulada dentro de um objecto, que também possui funções que actuam sobre essa estrutura de dados. Os dados não são directamente visíveis para o exterior do objecto. Apenas a interface, isto é, as operações disponibilizadas no objecto, é visível. Em OOP o programador pensa em termos de objectos que modelam o seu problema e nas relações entre eles. As estruturas de dados específicas e a implementação das operações sobre as mesmas devem ser apenas detalhes de implementação. A figura 3.2 ilustra esta ideia. Figura 3.2 Modelo da programação orientada aos objectos Uma questão bastante complexa é a forma como se consegue chegar a um conjunto de objectos e relações que modelem o problema correctamente. O objectivo deste livro não é ensinar o leitor todo este processo. O tema é demasiado extenso e complexo para o discutirmos em profundidade aqui. Caso o leitor não tenha experiência em design orientado ao objecto, recomendamos o livro de Grady Booch Object-Oriented Analysis and Design with Applications. Não é realmente possível aprender a programar bem no paradigma de orientação aos objectos, lendo simplesmente um livro que ensina a sintaxe usada numa linguagem. Embora isso seja mais ou menos possível numa linguagem estruturada, os conceitos envolvidos em orientação aos objectos são muito mais elaborados. É usual dizer-se que para aprender OOP começa-se por ler um livro que 46 FCA - Editora de Informática
3 CONCEITOS DE ORIENTAÇÃO AOS OBJECTOS ensine a sintaxe de uma linguagem OOP, em seguida lê-se um livro sobre design OOP e finalmente, só a experiência pode ajudar o programador. No entanto, antes de começarmos a discutir a sintaxe do C# em detalhe, vamos discutir um pouco dos principais conceitos associados à OOP. 3.1 Conceitos básicos A programação orientada aos objectos assenta em três conceitos básicos fundamentais: encapsulamento de informação, composição/herança e polimorfismo. Iremos examinar cada um deles. No entanto, caso o leitor não consiga perceber todos os conceitos, não se preocupe. Mais à frente iremos discutir em detalhe a sintaxe utilizada. Nesta altura o que importa é ficar com as noções básicas sobre estes três pilares fundamentais. Todos os conceitos aqui abordados serão largamente examinados em capítulos posteriores. 3.2 Encapsulamento de informação Tal como foi dito antes, um dos pontos fulcrais da OOP é o esconder as estruturas de dados dentro de certas entidades (objectos), aos quais são associadas funções (métodos) que manipulam essas estruturas de dados. As estruturas de dados não devem ser visíveis para outros objectos, apenas a sua interface (isto é, os seus métodos ou funções). Como é que se começa este processo? O programador começa por definir classes. Uma classe representa um tipo abstracto de dados famílias de entidades. Por exemplo, um empregado de uma empresa poderá corresponder a uma classe Empregado: class Empregado private string Nome; // Nome da pessoa private int Idade; // Idade da pessoa // Construtor: inicializa os elementos internos de um objecto public Empregado(string nomedapessoa, int idadedapessoa) Nome = nomedapessoa; Idade = idadedapessoa; // Mostra a informação sobre a pessoa public void MostraInformacao() Console.WriteLine("0 tem 1 anos", Nome, Idade); Um Empregado tem internamente armazenado um nome e uma idade. É de notar que antes da declaração das variáveis Nome e Idade encontra-se a palavra-chave private. O que isto quer dizer é que apenas esta classe pode utilizar estas variáveis. Nenhuma outra classe pode aceder às variáveis. A informação é escondida dentro da sua classe. FCA - Editora de Informática 47
4 C# 2.0 Esta classe possui também um construtor Empregado(string nomedapessoa, int idadedapessoa) e um método MostraInformacao(). Ambos são public. Sempre que uma entidade é declarada como public, qualquer outra lhe pode aceder. Sempre que uma entidade é declarada como private, apenas os elementos pertencentes à mesma classe lhe têm acesso. Para que serve o construtor? O construtor permite criar uma nova instância da classe. Isto é, permite criar um novo objecto dessa classe. Por exemplo: Empregado chefeprojecto = new Empregado("Luís Silva", 34); chefeprojecto.mostrainformacao(); faz com que seja criada uma nova instância da classe (um objecto), que irá guardar o nome e a idade do empregado no seu interior. Ao chamar chefeprojecto.mostrainformação(), o método é invocado naquele objecto em particular o empregado Luís Silva. Em qualquer altura podemos criar diversos objectos da mesma classe, que estes possuem identidades distintas: Empregado engenheiro1 = new Empregado("Magda Dionísio", 25); Empregado engenheiro2 = new Empregado("Cecília Cardoso", 25); engenheiro1.mostrainformacao(); engenheiro2.mostrainformacao(); Ao executar este segmento de código, surgirá no ecrã: Magda Dionísio tem 25 anos Cecília Cardoso tem 25 anos É de notar que não é válido escrever expressões como: Console.WriteLine("0", engenheiro1.nome); Uma vez que Nome é declarado como private, apenas elementos da sua própria classe lhe conseguirão aceder. É certo que é possível declarar todos os elementos de uma classe como sendo públicos, mas aí estão a perder-se todas as vantagens de utilizar uma linguagem orientada aos objectos, pois está-se a aumentar o acoplamento total da aplicação. Uma outra questão importante é o operador new. Este operador é utilizado sempre que se está a criar uma instância de uma classe, isto é, um objecto. Este operador trata de encontrar e reservar a memória necessária para conter o objecto e de chamar o construtor do mesmo, finalmente retornando uma referência para o objecto criado. 3.3 Composição e herança Quando um programador está a desenhar uma aplicação orientada aos objectos, começa por tentar encontrar classes. Cada classe tem uma determinada responsabilidade e representa uma entidade concreta do mundo real. Uma classe pode ter no seu interior objectos de outras classes ou relações para estes. Por exemplo, podemos ter na classe Empregado um objecto do tipo Casa e um objecto do tipo Telemovel (figura 3.3). Por sua 48 FCA - Editora de Informática
5 CONCEITOS DE ORIENTAÇÃO AOS OBJECTOS vez, cada uma destas classes irá possuir os seus dados e métodos. A este tipo de relação chama-se composição, sendo a relação mais típica do design orientado aos objectos. A linha com um quadrado numa das pontas indica uma relação de composição, estando o losango do lado da classe que contém uma referência para a outra. Figura 3.3 Relação de composição No entanto, existe um outro tipo de relação bastante comum e muito importante, é a relação de herança. Consideremos ainda o exemplo da classe Empregado. Imaginemos agora que numa aplicação que utilize esta classe surge uma nova classe que representa o patrão da empresa. Isto é, existe uma classe Patrao. Tal como um empregado normal, o patrão possui um nome e uma idade. No entanto, possui ainda uma característica que é ter um certo número de acções da empresa. Uma possível solução para este problema seria criar uma nova classe que tivesse como campos o nome, a idade e o número de acções que o patrão possui. No entanto, iríamos também de ter de duplicar os métodos existentes, para além dos dados já presentes em Empregado. Uma outra possível solução seria utilizar composição e colocar dentro da classe Patrao uma instância de Empregado. No entanto, novamente aqui temos o problema de ter de duplicar os métodos de Empregado na classe Patrao. Quando surge este tipo de problemas, em que uma classe é uma especialização de uma outra (Patrao é um caso especial de Empregado: o patrão é um empregado da empresa), estamos na presença de uma relação de herança. Isto é, existe uma classe que possui todos os elementos que outra possui, mas também possui mais alguns, sejam estes métodos ou dados. No nosso exemplo particular, dizemos que Patrao é uma classe derivada (ou herdada) da classe Empregado (figura 3.4). A seta indica a relação de herança, indo da classe derivada para a classe base. FCA - Editora de Informática 49
6 C# 2.0 Figura 3.4 Relação de herança Também é vulgar chamar à classe Empregado classe base, uma vez que está a ser utilizada como base de uma outra classe que se está a definir. Vejamos como é representada esta relação: class Patrao : Empregado private int NumeroAccoes; // Número de acções da empresa public Patrao(string nomedopatrao, int idadedopatrao, int naccoes) : base(nomedopatrao, idadedopatrao) NumeroAccoes = naccoes; // Mostra o número de acções do patrão public void MostraAccoes() Console.WriteLine("O número de acções é: 0", NumeroAccoes); A primeira mudança aparente é na declaração da classe: class Patrao : Empregado... o que isto quer dizer é que a classe Patrao deriva de Empregado, tendo todas as variáveis e métodos presentes na classe base (Empregado). Note-se também a modificação no construtor: public Patrao(string nomedopatrao, int idadedopatrao, int naccoes) : base(nomedopatrao, idadedopatrao)... Como a classe é diferente, o construtor também tem de ser diferente. Após a declaração do construtor, é indicado após os dois pontos a forma como a classe base tem de ser construída. Isto é, antes de um patrão ser um patrão, tem de ser um empregado. Assim, a palavra-chave base representa o construtor da classe acima (Empregado). Neste caso é 50 FCA - Editora de Informática
7 CONCEITOS DE ORIENTAÇÃO AOS OBJECTOS indicado que o objecto base Empregado deve ser inicializado com as variáveis nomedopatrao e idadedopatrao. Finalmente, no corpo do construtor propriamente dito, é feita a inicialização da variável que faltava (NumeroAccoes). Um ponto extremamente relevante é que um objecto Patrao também é um objecto Empregado, possuindo todos os métodos que este tem. Assim, o seguinte código é perfeitamente válido: Patrao donodaempresa = new Patrao("Manuel Marques", 61, ); donodaempresa.mostrainformacao(); donodaempresa.mostraaccoes(); É de salientar que na maioria das aplicações não existem muitas relações de herança. As relações de herança são extremamente úteis quanto se está a desenvolver bibliotecas para serem utilizadas (ou reutilizadas) por outros. Um erro muito comum das pessoas que se encontram a aprender OOP pela primeira vez é pensarem que a herança tem de, forçosamente, ser utilizada na solução de todos os problemas. Isso não é verdade. Só se deve utilizar herança em casos em que traga vantagens claras de reutilização ou caso a abstracção seja de facto algo que seja bem implementado em objectos concretos derivados. Figura 3.5 Exemplo de uma hierarquia de classes Uma das regras básicas para determinar se uma relação é de composição ou de herança é perguntar se se deve dizer contém ou é um. Por exemplo: um automóvel contém um motor, logo, deve existir uma relação de composição entre automóvel e motor. Não se pode dizer que um automóvel é um motor. Da mesma forma, pode-se dizer que um automóvel é um veículo. Assim, existe uma relação de herança entre estas duas entidades. Não faz sentido dizer que um veículo contém um automóvel. FCA - Editora de Informática 51
8 C# 2.0 Sempre que o programador decidir ter uma classe base e várias classes derivadas, deverá mover o máximo de funcionalidade para a classe base. Por exemplo, se existirem variáveis com a mesma funcionalidade nas classes derivadas, estas deverão ser substituídas por uma variável comum na classe base. O mesmo acontece com métodos semelhantes. É típico existir uma classe base, da qual derivam várias outras classes. Ao conjunto de classes pertencentes à mesma árvore, chama-se hierarquia de classes. A figura 3.5 ilustra parte de uma hierarquia de classes retirada da documentação da plataforma.net. 3.4 Polimorfismo Uma outra característica fundamental da programação orientada aos objectos é o polimorfismo. Por polimorfismo, entende-se a capacidade de objectos diferentes se comportarem de forma diferente quando lhes é chamado o mesmo método. Vejamos um caso concreto. /* * Programa que ilustra o conceito de polimorfismo. */ using System; // Classe base, comum a todos os empregados class Empregado private string Nome; public Empregado(string nomedapessoa) Nome = nomedapessoa; public void MostraNome() Console.WriteLine("0", Nome); // Método preparado para ser alterado por classes derivadas public virtual void MostraFuncao() Console.WriteLine("Empregado"); // Classe patrao, um caso especial de empregado class Patrao : Empregado public Patrao(string nomedopatrao) : base(nomedopatrao) // Nova implementação da funcionalidade "MostraFuncao" public override void MostraFuncao() Console.WriteLine("Patrao"); 52 FCA - Editora de Informática
9 CONCEITOS DE ORIENTAÇÃO AOS OBJECTOS // O programa principal class Exemplo3_1 static void Main() // Uma pequena tabela dos trabalhadores da empresa Empregado[] trabalhadores = new Empregado[] new Empregado("Zé Maria"), new Empregado("António Carlos"), new Patrao("José António") ; // Mostra o nome e a função de todos os trabalhadores for (int i=0; i<trabalhadores.length; i++) trabalhadores[i].mostranome(); trabalhadores[i].mostrafuncao(); Console.WriteLine(); Listagem 3.1 Programa que ilustra o conceito de polimorfismo (ExemploCap3_1.cs) No caso do programa da listagem 3.1, temos uma classe base Empregado e uma classe derivada Patrao. Existe ainda um método chamado MostraFuncao() que, por omissão, diz que a pessoa é um Empregado. No entanto, as classes derivadas devem poder modificar este método para que reflictam a função da pessoa em questão. Assim, enquanto no caso de um empregado simples o método mostra a palavra Empregado, no caso do patrão deverá mostrar Patrão. Suponhamos que temos o seguinte código: Patrao chefe = new Patrao("Manuel Marques"); chefe.mostranome(); chefe.mostrafuncao(); Empregado emp = chefe; emp.mostrafuncao(); Qual deverá ser o resultado da execução? Obviamente que a linha chefe.mostrafuncao(); levará a que seja escrito Patrão, no entanto, quando se cria uma referência Empregado emp com o valor de chefe e se chama MostraFuncao() sobre esta, o que acontecerá? Em primeiro lugar, a conversão de Patrao em Empregado é possível. É sempre possível converter (ou utilizar) uma classe base em vez da classe derivada. Isso deve-se ao facto de uma relação de herança ser uma relação é um. A classe Patrao possui todos os elementos que a classe Empregado possui. FCA - Editora de Informática 53
10 C# 2.0 Agora vem a parte mais interessante: ao escrever emp.mostrafuncao();, o CLR guarda a verdadeira identidade dos objectos que estão associados a cada referência. Assim, embora estejamos a chamar o método MostraFuncao() através de uma referência Empregado, o sistema sabe que tem de chamar a verdadeira implementação desse método, para o objecto em causa. Neste caso o resultado da execução seria então: Manuel Marques Patrão Patrão A isto chama-se polimorfismo. O sistema descobre automaticamente a verdadeira classe de cada objecto e chama as implementações reais para os objectos em causa. Em C#, sempre que se quiser tirar partido desta funcionalidade, tem de se declarar o método base como sendo virtual (chama-se a isto métodos virtuais). Sempre que numa classe derivada se altera a implementação de um destes métodos, como é o caso da classe Patrao, tem de se marcar esse método com a palavra-chave override. Voltemos agora ao exemplo da listagem 3.1. Na classe principal do programa é criada uma pequena tabela com os trabalhadores da empresa (trabalhadores), onde se encontram dois empregados normais e um patrão. Em seguida, é executado o seguinte ciclo: for (int i=0; i<trabalhadores.length; i++) trabalhadores[i].mostranome(); trabalhadores[i].mostrafuncao(); Console.WriteLine(); Aqui vemos o poder do polimorfismo em acção. Os empregados (quer sejam normais ou patrões) são tratados de forma uniforme, sendo colocados numa tabela. No entanto, ao chamar o método MostraFuncao(), no caso dos empregados normais, é mostrado Empregado. No caso dos patrões é mostrado Patrão. O resultado da execução do programa é o seguinte: Zé Maria Empregado António Carlos Empregado José António Patrão O polimorfismo permite que os objectos mantenham a sua identidade apesar de serem tratados usando classes mais genéricas (isto é, classes mais acima na hierarquia de derivação). Isso é extremamente poderoso. Por exemplo, neste exemplo seria trivial estendê-lo por forma a que houvesse um método de cálculo de salário que no caso dos empregados teria uma certa implementação e no caso dos patrões uma outra. Convém alertar para o facto de que no caso de não se declararem os métodos como virtual ou não se diga que os novos métodos são override, o comportamento do sistema é 54 FCA - Editora de Informática
11 CONCEITOS DE ORIENTAÇÃO AOS OBJECTOS chamar os métodos da classe que está a ser utilizada como referência. Isto é, no pequeno exemplo de chefe, ao fazer emp.mostrafuncao();, caso MostraFuncao() não fosse um método virtual ou a nova implementação não fizesse o override da antiga, a chamada resultaria em Empregado em vez de Patrão. Isto é uma fonte comum de erros, pelo que o programador deve estar atento a esta situação. A reter Conceitos básicos de OOP A programação orientada aos objectos (OOP) baseia-se em três princípios básicos: encapsulamento, composição/herança e polimorfismo. Encapsulamento refere-se ao facto de as estruturas de dados serem entidades privadas de cada classe, devendo ser apenas acedidas por elementos da própria classe. Composição e herança são os tipos de relações que podem existir entre objectos (e classes). Composição corresponde a relações do tipo contém, herança corresponde a relações do tipo é um. Polimorfismo refere-se à capacidade de diferentes objectos se comportarem de forma diferente quando o mesmo método é invocado neles. Isto apesar de ser utilizada uma referência para uma classe base para fazer a chamada. Uma classe representa uma família de objectos, enquanto um objecto representa uma instância dessa família (ex: Empregado é uma classe enquanto a entidade que representa José António é um objecto da classe Empregado). Diferentes instâncias de uma classe têm variáveis diferentes. As instâncias são criadas com o operador new. Ao criar um novo objecto, o construtor da classe é chamado. O construtor tem o mesmo nome que a classe e não tem valor de retorno. Se um elemento de uma classe é declarado private, então é visível apenas para elementos dessa classe. Se um elemento de uma classe é declarado public, então é visível para o exterior da classe. Os dados da classe devem, regra geral, ser privados. Apenas o menor número possível de métodos da classe deve ser público. Uma relação de composição surge quando uma classe tem de conter um objecto de uma outra classe (exemplo: automóvel contém motor ). Uma relação de herança surge quando um objecto também é uma instância de uma outra classe mais geral (exemplo: automóvel é um veículo ). Uma relação de herança indica-se por: class ClasseDerivada : ClasseBase... É sempre possível utilizar uma referência de uma classe mais acima na hierarquia de derivação para um objecto de uma classe derivada dessa. Para existir polimorfismo, os métodos na classe base têm de ser declarados virtual e nas classes derivadas têm de ser declarados override. Ao longo dos próximos capítulos, iremos analisar detalhadamente os pormenores associados à programação orientada aos objectos. FCA - Editora de Informática 55
Conceitos de Programação Orientada a Objetos
Conceitos de Programação Orientada a Objetos Tatyana Bitencourt Com as técnicas de orientação a objeto, é possível obter resultados considerados impossíveis pensando de maneira estruturada. Como Java não
Leia maisProgramaçã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 maisPolimorfismo. O que é polimorfismo?
O que é polimorfismo? Polimorfismo Significa que variáveis podem referenciar mais do que um tipo. Não é um conceito novo e várias linguagens de programação aplicam. Funções são polimórficas quando seus
Leia maisLinguagens de Programação Aula 12
Linguagens de Programação Aula 12 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Implementando subprogramas 2 Na aula de hoje Suporte para a programação orientada a objetos 3 Roteiro Introdução
Leia maisParadigmas de Linguagens de Programação. Suporte para Programação Orientada a Objeto
Suporte para Programação Orientada a Objeto Cristiano Lehrer Categoria das Linguagens que Suportam POO Suporte a POO acrescentado a uma linguagem já existente: C++ (também suporta programação procedural
Leia maisLinguagem 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 maisProgramação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos
Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis
Leia maisImplementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação
Implementando classes em C# Curso Técnico Integrado em Informática Fundamentos de Programação Introdução Além de utilizar as classes presentes na biblioteca padrão, programadores podem definir suas próprias
Leia maisAULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos
Câmpus Santa Helena Curso: Ciência da Computação Disciplina: Programação Orientada a Objetos AULA 8 Polimorfismo de: coerção, overloading, inclusão e paramétrico Prof. Dr. Fernando Henrique Campos Tema
Leia mais9 Classes Abstractas e Interfaces
9 Classes Abstractas e Interfaces Classe Abstracta Classe em que pelo menos um dos métodos de instância não é implementado. Exemplo: public abstract class Forma{ public abstract double area(); public abstract
Leia maisLinguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces
Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas
Leia maisLinguagem de Programação Orientada a Objeto Abstração - Encapsulamento
Linguagem de Programação Orientada a Objeto Abstração - Encapsulamento Professora Sheila Cáceres Variáveis locais Campos são um tipo de variável. Eles: armazenam valores por toda a vida de um objeto; e
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 5: Associações LEEC@IST Java 1/32 Associação revisão Uma associação representa uma referência entre objectos. Numa associação são definidos: Identificador termo descritivo
Leia maisConceitos de Programação Orientada a Objetos
Conceitos de Programação Orientada a Objetos Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 02 Conceitos de Programação Orientada a Objetos 1 Conceitos Fundamentais Classe; Ocultamento de informação;
Leia maisIntrodução a Programação Orientada a Objetos
Introdução a Programação Orientada a Objetos Fernando de Simas, Airton de Souza, Sérgio Roberto Centro de Ciências Tecnológicas da Terra e do Mar Universidade do Vale do Itajaí UNIVALI. 88302-202 Itajaí
Leia maisInterfaces e Classes Abstratas
Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos
Leia maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisEsta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli
Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,
Leia maisProgramação Orientada a Objectos - P. Prata, P. Fazendeiro
3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem
Leia maisIntrodução a orientação a objetos
2 Introdução a orientação a objetos Introdução 2 Linguagens procedimentais 2 Um pouco de história 2 Idéias básicas da POO 2 Classe, atributo e método 2 Herança 3 Polimorfismo 3 Vantagens e desvantagens
Leia maisIntrodução à Programação Orientada a Objetos. Programação Estruturada vs Programação Orientada a Objetos
Introdução à Programação Orientada a Objetos O desenvolvimento de software é extremamente amplo. Nesse mercado, existem diversas linguagens de programação, que seguem diferentes paradigmas. Um desses paradigmas
Leia maisClasses 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
Leia maisAula 9 Herança. Prof. Jefersson Alex dos Santos
Aula 9 Herança Prof. Jefersson Alex dos Santos Roteiro Introdução Conversão de tipo explícita (Cast) Acesso Protegido A classe Object A classe Class Reflexão Recomendações de Projeto Herança Técnica necessária
Leia maisModificadores de Acesso e Atributos de Classe
Modificadores de Acesso e Atributos de Classe 1 Controlando o acesso p Um dos problemas mais simples que temos no nosso sistema de contas é que o método saca permite sacar mesmo que o limite tenha sido
Leia maisProgramação Orientada a Objetos. Encapsulamento
Programação Orientada a Objetos Encapsulamento Cristiano Lehrer, M.Sc. Introdução (1/2) Os três pilares da programação orientada a objetos são: Encapsulamento Herança Polimorfismo Encapsulamento é a característica
Leia maisNotas de Aula 04: Herança e polimorfismo.
Notas de Aula 04: Herança e polimorfismo. Objetivos da aula: Introduzir o conceito de Heranças Criar uma hierarquia de classes Rever o uso de modificadores de acesso. Apresentar o conceito de polimorfismo
Leia maisOrientação a Objetos Parte I. Introdução a POO (Programação Orientada a Objetos)
Orientação a Objetos Parte I Introdução a POO (Programação Orientada a Objetos) Histórico Gerações de Linguagens de Programação Primeira Geração: Linguagem de máquina Segunda Geração: Linguagem de montagem
Leia maisOrientação a Objetos - Herança
Orientação a Objetos - Herança 1 Repetindo Código p Todo banco tem funcionário. A classe funcionario ficaria da seguinte forma; class Funcionario { String nome; String cpf; double salario; // métodos devem
Leia maisIntrodução à Orientação a Objetos em Java
Introdução à Orientação a Objetos em Java Prof. Gustavo Wagner (Alterações) Slides originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB Centro de Informática, UFPE Programação estruturada
Leia maisHerança. Herança. Herança. Herança. Herança. Programação Orientada a Objetos
e Ligação Dinâmica Programação Orientada a Objetos e Polimorfismo A é a contribuição original do paradigma de programação orientado a objetos Fundamentos chave do paradigma OO: Abstração de Dados A herança
Leia maisCOMPORTAMENTOS - 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 maisOrientação a Objetos e Java
Orientação a Objetos e Java Daves Martins davesmartins@yahoo.com.br Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
Leia maisVetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli
Vetores De modo geral, em linguagem de programação, vetores ou arrays são estruturas de dados que permitem que uma mesma variável possa armazenar mais de um valor; Em Java, vetores são coleções de dados,
Leia maisLinguagem 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 maisOO - Orientação a Objetos
OO - Orientação a Objetos 1 Motivação p Orientação a objetos é uma maneira de programar que ajuda na organização e resolve muitos problemas enfrentados pela programação procedural; p Imaginem em um grande
Leia maisTutorial C# - Nova temporada
Tutorial C# - Nova temporada Date : 23 de Fevereiro de 2009 Olá a todos, este é o meu primeiro post de muitos (espero eu) em que vos vou falar de programação em C#. Porquê C#? Porque é sem duvida a mais
Leia maisLaboratório de programação II
Laboratório de programação II Paradigma de orientação a Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Contextualização Paradigma de orientação a Contextualização A construção
Leia maisEncapsulamento e Modularização
Encapsulamento e Modularização Departamento de Computação Universidade Federal de Sergipe Encapsulamento Modularização Tipos Abstratos de Dados (TADs) Objetos Classes Conteúdo Encapsulamento Programação
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Modificadores de Acesso: public e private Prof. Tulio Alberton Ribeiro Instituto Federal de Santa Catarina IFSC campus São José tulio.alberton@ifsc.edu.br 31 de julho de
Leia maisJava 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
Leia maisHerança Tiago Eugenio de Melo
Herança Tiago Eugenio de Melo tiago@comunidadesol.org Herança Conceito: Herança é a capacidade de especializar tipos de objetos (classes), de forma que os tipos especializados contenham, além de características
Leia maisTema da aula Introdução ao paradigma de programação: Orientado a Objetos
Profa. Juliana Santiago Teixeira Disciplina: Programação Orientada a Objetos I Tema da aula Introdução ao paradigma de programação: Orientado a Objetos Paradigma Paradigma é a filosofia adotada na construção
Leia maisFicha Prática 10. António Nestor Ribeiro, Paulo Azevedo, Mário Martins PPIV (LESI) 2005/06
Ficha Prática 10 António Nestor Ribeiro, Paulo Azevedo, Mário Martins {anr,pja,fmm@di.uminho.pt PPIV (LESI) 2005/06 Objectivos 1. Interfaces: declaração e utilização. 2. Interfaces como tipos de dados
Leia maisLinguagens de Programação Princípios e Paradigmas
Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Linguagens e Ambientes de Programação 2002-2003 Linguagens de Programação Princípios e Paradigmas Gladys Castillo
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Pacotes e Encapsulamento Msc. Paulo de Tarso F. Júnior 1 Introdução Permite o agrupamento de classes em uma coleção chamada pacote Um pacote é uma coleção de classes e interfaces
Leia maisComputação II Orientação a Objetos
Computação II Orientação a Objetos Fabio Mascarenhas - 2014.1 http://www.dcc.ufrj.br/~fabiom/java Breakout Componentes do Breakout Bola Raquete Tijolos Paredes Score Nem todos vão precisar de classes próprias
Leia maisPOO 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 maisProgramação Orientada a Objetos 2 Flávio de Oliveira Silva, M.Sc.
Orientação a Objetos Revisão Conceitos CLASSE CLASSIFICAÇÃO GENERALIZAÇÃO ESPECIALIZAÇÃO HERANÇA INTERFACES POLIMORFISMO SOBRECARGA ENCAPSULAMENTO ABSTRAÇÃO MODULARIZAÇÃO 9 CLASSE Classe é um agrupamento
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos luno: ata: Professor: Leonardo abral da Rocha Soares 1. Torna o atributo visível a todas as classes do pacote onde foi declarado: a) public b) private c) protected d) package
Leia maisIntroduçã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
Leia maisLinguagem 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
Leia mais3. 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. Linguagem de programação C 3.1. Conceitos
Leia maisProgramação com Objectos 1º Teste 2013/2014 1º Semestre 15 de Novembro de 2013, 18:00 (90 minutos)
Programação com Objectos 1º Teste 2013/2014 1º Semestre 201311151800 1/7 Programação com Objectos 1º Teste 2013/2014 1º Semestre 15 de Novembro de 2013, 18:00 (90 minutos) Nome: Primeira Parte (7 valores)
Leia maisOrientação a Objetos (OO) LPG II - Java. Orientação a Objetos (OO) Programação Orientada a Objetos. Programação Procedimental
Orientação a Objetos (OO) LPG II - Java Orientação a Objetos (OO) Roberto Vedoato vedoato@joinville.udesc.br Programação Procedimental x Orientada a Objetos Objetivos e Benefícios da Orientação a Objetos
Leia maisJava First-Tier: Aplicações. Sobrecarga. Orientação a Objetos em Java (II) Sobrecarga de Construtores: Exemplo de Declaração
Java First-Tier: Aplicações Orientação a Objetos em Java (II) Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Sobrecarga Um recurso usual em programação OO é o uso de sobrecarga
Leia maisClasses 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
Leia maisA programação orientada a objetos tenta simular estes aspectos, trazendo para o computador a realidade do dia-a-dia.
Introdução A orientação a objetos é uma maneira de programar que trata de modelar os processos de programação de uma maneira próxima à linguagem humana: tratando componentes de um programa como um objeto
Leia maisProgramação Orientada a Objetos Flávio de Oliveira Silva 144
HERANÇA Herança é a capacidade de uma subclasse de ter acesso as propriedades da superclasse(também chamada classe base) relacionada a esta subclasse. Dessa forma os atributos e métodos de uma classe são
Leia maisOrientação a Objetos (OO) Java Avançado Revisão do Paradigma de. Orientação a Objetos (OO) Programação Orientada a Objetos. Programação Procedimental
Orientação a Objetos (OO) Java Avançado Revisão do Paradigma de Orientação a Objetos (OO) Roberto Vedoato vedoato@joinville.udesc.br Programação Procedimental x Orientada a Objetos Objetivos e Benefícios
Leia maisUniversidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática
6 Polimorfismo Sobrecarga (overloading) de métodos: public class x { public void m1( ) {... sobrecarga do método m1 public void m1 ( int p ) {... Diz-se que o nome de um método foi sobrecarregado ( overloaded
Leia maisUnidade: 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 mais4 Conceito de Herança
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Leia maisDados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos.
2. Classes e Objetos Uma classe é um modelo que define os atributos e métodos comuns a um conjunto de objetos de forma encapsulada. Atributos são informações ou dados que descrevem, categorizam ou quantificam
Leia maisIntrodução. Atributos em Java. Atributos. Acesso à atributos em Java. Atributo versus variável. Atributos, métodos e encapsulamento.
Introdução Atributos, métodos e encapsulamento joao@ecomp.uefs.br Atributos Ipos de acesso: private, public, protected e default Encapsulamento Métodos Construtores Criando objetos Departamento de Ciências
Leia maisProgramaçã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
Leia maisEncapsulamento e Métodos (Construtores e Estáticos) João Paulo Q. dos Santos
Encapsulamento e Métodos (Construtores e Estáticos) Sobrecarga de Métodos João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Roteiro Conceitos sobre Encapsulamento; Variável this; Métodos Construtores;
Leia maisLEIC-A / MEIC-A 2007/2008 (1º
1/11 LEIC-A / MEIC-A 2007/2008 (1º Semestre) Teste (versão A) 08 de Janeiro de 2008, 09:00 (120 minutos) Nome: Primeira Parte (5 valores) PERGUNTA RESPOSTA 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 Segunda
Leia maisTÉCNICAS DE ORIENTAÇÃO A OBJETOS
TÉCNICAS DE ORIENTAÇÃO A OBJETOS APLICAÇÃO EM: C# E JAVA Sumário INTRODUÇÃO... 4 PARADIGMAS DE PROGRAMAÇÃO... 5 PROGRAMAÇÃO PROCEDURAL... 5 PROGRAMAÇÃO ESTRUTURADA... 5 PROGRAMAÇÃO ORIENTADA A OBJETOS...
Leia maisProgramação Orientada a Objetos. Prof. MsC Sílvio Bacalá Júnior
Programação Orientada a Objetos Prof. MsC Sílvio Bacalá Júnior Princípios básicos de OO Abstração Encapsulamento Modularidade Herança 2013 POO - Bacalá 2 Abstração Concentração nas características essenciais,
Leia maisProgramação Orientada a Objetos - 3º semestre AULA 04 Prof. André Moraes
Pág 25 Programação Orientada a Objetos - 3º semestre AULA 04 Prof. André Moraes 6 COMPORTAMENTO DOS OBJETOS Sabe-se que os objetos possuem um estado e comportamento, representados pelas variáveis de instância
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Introdução Alguns conceitos importantes Orientação a Objetos Alguns conceitos importantes Programação Estruturada X Programação OO Classes Objetos Construtores e Destrutores
Leia maisGRASP. Nazareno Andrade (baseado em Hyggo Almeida e Jacques Sauvé)
GRASP Nazareno Andrade (baseado em Hyggo Almeida e Jacques Sauvé) O que vimos na última aula? Introdução a padrões O que são? Por que utilizá-los? Padrões GRASP O que são? Quais serão apresentados na disciplina?
Leia maisProgramação Orientada a Objetos
Programação Orientada a Objetos Classes, Atributos e Métodos Msc. Paulo de Tarso F. Júnior 1 Introdução Programas eram lineares e com poucos módulos: PE Programação Estruturada Aumento da complexidade
Leia maisProgramaçã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 maisProgramação por Objectos Introdução. Introdução 1/18
Programação por Objectos Introdução LEEC@IST Introdução 1/18 História (1) [60s] Simula-67, Dahl e Nygaard da Univ. de Oslo Primeira linguagem com conceitos OO. [70s] Smalltalk, da Xerox Primeira implementação
Leia maisProgramaçã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 maisConceitos básicos de programação
Para aprender uma linguagem de programação podemos começar por conhecer os vocábulos ou símbolos que formam o seu léxico e depois aprender como esses vocábulos integram as instruções (frases) que compõe
Leia maisProgramaçã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
Leia maisESCOLA SUPERIOR TÉCNICA PLANO ANALÍTICO LABORATÓRIO DE INFORMÁTICA III( JAVA) SEMESTRE Nº DE CRÉDITOS
ESCOLA SUPERIOR TÉCNICA PLANO ANALÍTICO LABORATÓRIO DE INFORMÁTICA III( JAVA) NÍVEL REGIME ANO ANO ACADÉMICO SEMESTRE Nº DE CRÉDITOS Nº DE HORAS/SEMANA TOTAL DE HORAS SEMESTRAIS DE CONTACTO DOCENTE 1 Laboral
Leia maisUniversidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática
1 - Introdução 1.1 - Perspectiva histórica: Conceitos A evolução das linguagens de programação tem-se feito na procura de ferramentas: - cada vez mais próximas da percepção humana - e que permitam lidar
Leia maisProjeto de Linguagem. Linguagens de Programação
Projeto de Linguagem Renato Ferreira Linguagens de Programação Linguagens são adotadas para preencher uma demada Facilitar uma aplicação outrora difícil/impossível Independente da qualidade da linguagem
Leia maisOrientação a objetos Disciplina: Linguagens de Programação. Prof. Alexandre Cassimiro Andreani
Orientação a objetos Disciplina: Linguagens de Programação Prof. Alexandre Cassimiro Andreani Sumário 1 Objetivo...3 2 Origem da programação orientada a objetos...4 2.1 Exercícios...4 3 Classes e Objetos...6
Leia maisUnidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano
Programação Servidor em Sistemas Web 1 Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano Objetivo: Apresentar resumidamente os conceitos de classes,
Leia maisPOO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Classe abstrata, interface e polimorfismo Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo
Leia maisTemplates. BCC Programação Orientada a Objectos(POO) Departamento de Computação - UFOP
Templates BCC 221 - Programação Orientada a Objectos(POO) Guillermo Cámara-Chávez Departamento de Computação - UFOP Introdução Os templates ou gabaritos fornecem a base para existência da programação genérica
Leia maisDeclaração de Construtores em Java
Programando com Java Artigo http://mballem.wordpress.com/ Declaração de Construtores em Java Para que serve e como usar um Construtor em Java Autor Marcio Ballem: é formado em Sistemas de Informação e
Leia maisProgramação Orientada a Objetos em C++: introdução à herança
Programação Orientada a Objetos em C++: introdução à herança Disciplina de Programação Científica II Aula 15 de 18 21/06/2013 Professor Giovani Gracioli giovanig@gmail.com Objetivos Os objetivos dessa
Leia maisNOVIDADES DO JAVA PARA PROGRAMADORES C
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB NOVIDADES DO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 4 5 Classes Objetos Herança Tratamento de Erros Material de Estudo Material Notas
Leia maisAULA 02. OBJETIVO: Características da Linguagem Orientada a Objetos.
AULA 02 OBJETIVO: Características da Linguagem Orientada a Objetos. HABILIDADES TRABALHADAS: Comparação das características das linguagens orientadas a objetos frente às linguagens estruturadas. Conhecimentos
Leia maisEspecificam quem tem acesso a cada entidade, isto é, quem tem acesso a. cada classe e cada membro da classe (dados e métodos)
Mecanismos de controlo de acesso Especificam quem tem acesso a cada entidade, isto é, quem tem acesso a cada classe e cada membro da classe (dados e métodos) Modificadores de acesso: public protected private
Leia maisProgramação Java. Linguagem de Programação Java
Programação Java Linguagem de Programação Java Linguagem de Programação Java Sumário Classes e Objetos Atributos e Métodos Construtor e Destrutor Ricardo Sant'Ana Programação Java Slide 2 Classes e Objetos
Leia maisIntrodução. Programação Orientada a Objetos (POO) João Paulo Q. dos Santos
Introdução Programação Orientada a Objetos (POO) João Paulo Q. dos Santos joao.queiroz@ifrn.edu.br Avaliações Continuada: Resolução de Atividades Práticas em Sala; Resolução de Lista de Exercícios; Provas
Leia maisINF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS
INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 9 Tratamento de Exceções Assertivas Programa Capítulo
Leia maisESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2006/2007
ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA INTRODUÇÃO À PROGRAMAÇÃO (ENG. INFORMÁTICA) COMPUTADORES E PROGRAMAÇÃO I (ENG. ELECTROTÉCNICA) 2006/2007 TRABALHO PRÁTICO Nº
Leia maisProgramação OO em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM
Programação OO em Java Profa Andréa Schwertner Charão DLSC/CT/UFSM Sumário Herança Visibilidade de atributos e métodos Extensão e sobreposição Uso de super Referências para objetos Polimorfismo Conceitos
Leia maisClasses 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
Leia maisProgramaçã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 maisIntroduçã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 giovanig@gmail.com Objetivos Os objetivos dessa aula são:
Leia maisAULA 6 - ARRAYS. Array de 10 elementos
1 AULA 6 - ARRAYS Arrays são objetos que armazenam diversas variáveis do mesmo tipo. Eles podem conter variáveis de referência primitivas ou de objeto, mas o array propriamente dito sempre será um objeto
Leia mais