PHP INTRODUÇÃO CLASSES E OBJETOS
|
|
- Fernando Corte-Real Azeredo
- 8 Há anos
- Visualizações:
Transcrição
1 INTRODUÇÃO PHP AULA 8 ORIENTAÇÃO A OBJETOS Professor: Leonardo Pereira leongamerti@gmail.com Facebook: leongamerti Material de Estudo: A orientação a objetos ou OO é o paradigma mais utilizado para construção de sistema. Em vez de construir um sistema formado por um conjunto de funções e variáveis nem sempre agrupadas de acordo com o contexto, na OO utilizamos uma ótica mais próxima do mundo real. Lidamos com objetos, estruturas que já conhecemos do nosso dia-a-dia e sobre as quais possuímos maior compreensão. CLASSES E OBJETOS Ao trabalharmos com orientação a objetos é fundamental entender o conceitos de classes e objetos. Uma classe é uma estrutura que define um tipo de dados, podendo conter atributos e também métodos para manipular esses atributos. Pense em uma classe como um molde para criar (instanciar) objetos. CLASSES E OBJETOS Vamos declarar uma classe chamada Produto com 4 propriedades. Uma propriedade é uma variável que existe dentro do contexto de um objeto. Para declarar uma classe usamos a palavra chave class. Para declarar uma propriedade usamos a palavra chave var.
2 CLASSE PRODUTO CLASSES E OBJETOS var $codigo; var $descricao; var $preco; var $quantidade; Um objeto contém exatamente a mesma estrutura de uma classe. Por isso que falamos que a classe é o molde para um objeto. No entanto, sua estrutura é dinâmica. Seus atributos podem mudar de valor durante a execução do programa e podemos declarar diversos objetos oriundos de uma mesma classe. A classe é apenas o código fonte. O objeto é um pedaço de um programa em execução na CPU e residente na memoria principal. INCLUINDO CÓDIGO Para que um script contido em um arquivo separado possa ser usado, devemos chamá-lo utilizando uma das 4 funções abaixo: include include_once require require_once INCLUINDO CÓDIGO include: inclui um arquivo no escopo do programa tornando-se disponível a partir da linha em que a inclusão ocorre produzindo uma mensagem de advertência (warning) caso o arquivo não exista. include_once: funciona parecido com o include, porém só inclui o arquivo apenas uma vez, sendo útil em casos em que programa pode passar mais de uma vez pela instrução. require: similar ao include porém produz um erro fatal parando o processamento do código caso o arquivo não exista. require_once: similar ao require, porém o arquivo só é incluído uma única vez.
3 CLASSES E OBJETOS CLASSES E OBJETOS $p = new Produto; $p->codigo = 1000; $p->descricao = "Mouse sem fio"; echo $p->codigo; echo $p->descricao; No exemplo primeiro importamos o código fonte da classe Produto usamos a função include. Depois criamos um objeto da classe Produto usando o operador new seguido do nome da classe. Para acessar as propriedades de um objeto em nosso programa, utilizamos o nome da propriedade sem o $ precedido do nome do objeto. MÉTODOS MÉTODOS Agora vamos adicionar um método que é uma função declarada dentro da estrutura da classe. O método etiqueta() trabalha com as propriedades do objeto. Para diferenciar as propriedades de um objeto de variáveis locais, utiliza-se a pseudovariavel $this para referenciar as propriedades do objeto que está executando o método. var $codigo; var $descricao; var $preco; var $quantidade; function etiqueta(){ echo "$this->codigo - $this->descricao";
4 EXECUTANDO UM MÉTODO $p = new Produto; $p->codigo = 1000; $p->descricao = "Mouse sem fio"; $p->etiqueta(); // Saída é : 1000 Mouse sem fio Para executar um método é bem parecido com a atribuição de valor a uma propriedade. CLASSE É uma estrutura estática utilizada para descrever objetos mediante atributos e métodos. A classe é um modelo para criação de objetos. Ao modelarmos uma classe Pessoa, suas propriedades podem ser: nome, altura, idade, escolaridade e etc. Os métodos são as funcionalidades desempenhadas pela casse. No caso da classe Pessoa podemos ter os métodos falar(), crescer(), correr(), andar(). OBJETO MÉTODO COM RETORNO Um objeto é uma estrutura dinâmica originada com base em uma classe. Um objeto também é conhecido como instancia de uma classe, porque o objeto existe durante um dado instante de tempo que vai da sua criação ate a sua destruição. Podemos ter diversos objetos da classe Pessoa sendo que cada um pode possuir um valor diferente para suas respectivas propriedades. var $codigo; var $descricao; var $preco; var $quantidade; function etiqueta(){ echo "$this->codigo - $this->descricao"; function desconto($desconto){ $desconto = $desconto / 100; return $this->preco * $desconto;
5 MÉTODO COM RETORNO Um método pode retornar um valor quando for executado. Para isso usamos a palavra return da mesma forma que usamos quando criamos uma função comum. No final da execução do método, a instrução return devolve um determinado conteúdo para o chamador do método. MÉTODO COM RETORNO $p = new Produto; $p->codigo = 1000; $p->descricao = "Mouse sem fio"; $p->preco = 700; echo {$p->desconto(20) reais ; Saída: 140 reais. O método desconto possui retorno por isso que usamos o echo. Ao executar um método entre aspas duplas é necessário colocar a declaração entre chaves {. CONSTRUTORES CONSTRUTORES Um construtor é um método especial usado para definir o comportamento inicial de um objeto. É executado automaticamente no momento em que instanciamos um objeto por meio do operador new. Não se deve retornar nenhum valor por meio deste método porque o seu retorno é o próprio objeto que está sendo instanciado. Caso não seja definido um método construtor, automaticamente todas as propriedades do objeto criado são inicializados com NULL. Para definir um método construtor declaramos o método construct(); var $quantidade; function construct(){ $this->quantidade = 100;
6 CONSTRUTORES $p = new Produto; echo $p->quantidade; Saída é: 100 Agora, todo objeto criado possui inicial como quantidade o valor 100. DESTRUTORES Um destrutor ou finalizador é um método especial executado automaticamente quando o objeto é retirado da memória.. Isso ocorre nos seguintes casos: quando atribuímos o valor NULL ao objeto quando usamos a função unset() sobre o objeto quando o programa é finalizado. Para definir um método destrutor em uma classe basta declarar o método destruct(). DESTRUTORES DESTRUTORES var $codigo; var $descricao; function etiqueta(){ echo "$this->codigo - $this->descricao"; function destruct(){ echo "Objeto destruído"; $p = new Produto; $p->codigo = 100; $p->descricao = "Mouse sem fio"; echo $p->etiqueta(); Saída é: Mouse sem fio Objeto destruído A mensagem objeto destruído foi executado quando o script chegou no ponto.
7 ENCAPSULAMENTO É um mecanismo que fornece proteção de acesso aos membros internos de um objeto. Existem certas propriedades de uma classe que devem ser tratadas exclusivamente por métodos dela mesma, que são implementações projetadas para manipular essas propriedades de forma correta. As propriedades nunca devem ser acessadas diretamente de forma do escopo de uma classe, pois dessa forma a classe não fornece mais garantias sobre os atributos que contem, perdendo, assim a responsabilidade sobre ele. Os métodos devem ser projetados de forma a protegerem suas propriedades, fornecendo interfaces para a manipulação destas. ENCAPSULAMENTO Para atingir o encapsulamento, podemos definir a visibilidade das propriedades e dos métodos de um objeto. Existem 3 formas de acesso: private: membros declarados como private somente podem ser acessados dentro da própria classe. protected: somente podem ser acessados dentro da própria classe em que foram declarado e partir de classes filhas. public: podem ser acessados livremente. HERANÇA O uso da OO nos orienta em direção a uma maior organização de código, mas um dos maiores benefícios que encontramos na utilização desse paradigma é a possibilidade de reutilizar partes de código já definidas fornece maior agilidade no dia-a-dia. Através da herança eliminamos a necessidade de eventuais duplicações ou reescritas de código. HERANÇA Uma herança cria uma arvore genealógica onde as classes inferiores da hierarquia herdam todas as propriedades e os métodos das classes superiores, chamadas de superclasses. Este recurso tem uma aplicabilidade muito grande, visto que é relativamente comum termos de criar novas funcionalidades em software. Utilizando a herança, em vez de criamos uma estrutura totalmente nova, podemos reaproveitar uma estrutura já existente que nos fornece uma base abstrata para o desenvolvimento, provendo recursos básicos e comuns.
8 HERANÇA CLASSE FUNCIONÁRIO Vamos criar uma classe genérica chamada Funcionário e aproveitar seu código fonte para criar uma classe mais específica chamada e Médico. class Funcionario{ protected $nome; protected $salario; public function setnome($n){ $this->nome = $n; public function getnome(){ return $this->nome; public function setsalario($s){ $this->salario = $s; public function getsalario(){ return $this->salario; CLASSE MEDICO include_once "classes/funcionario.class.php"; class Medico extends Funcionario{ private $crm; public function setcrm($c){ $this->crm = $c; public function getcrm(){ return $this->crm; public function cracha(){ echo "$this->nome - $this->crm"; public function getsalario(){ return $this->salario * 1.1; // return parent::getsalario() * 1.1; CLASSE ENGENHEIRO include_once "classes/funcionario.class.php"; class Engenheiro extends Funcionario{ private $crea; public function setcrea($c){ $this->crea = $c; public function getcrea(){ return $this->crea; public function cracha(){ echo "$this->nome - $this->crea";
9 HERANÇA SOBRESCRITA OU OVERRIDING include_once "classes/medico.class.php"; include_once "classes/engenheiro.class.php"; $m = new Medico(); $m->setnome("patricia Silva"); $m->setcrm(" "); $m->setsalario(1000); $m->cracha(); echo "<br>"; $e = new Engenheiro(); $e->setnome("vitor Mendes"); $e->setcrea(" "); $e->setsalario(1000); $e->cracha(); Ocorre quando modificamos o comportamento de um método da classe pai na filha adicionando uma nova funcionalidade. Temos um exemplo de sobrescrita na classe Medico quando está sobrescreve a implementação de getsalario() herdada da superclasse Funcionário. Nela, o salario é aumentado em 10%. Vale ressaltar que na classe Engenheiro não ocorre esse procedimento. Se for necessário chamar um método da classe mãe podemos usar o parent. A linha comentada em getsalario() realizada o mesmo trabalho que a linha está acima porem chamando o getsalario() da superclasse. Como temos apenas um único método com varias implementações diferentes temos aqui presente o mecanismo chamado polimorfismo. SOBRESCRITA OU OVERRIDING CLASSES ABSTRATAS include_once "classes/medico.class.php"; include_once "classes/engenheiro.class.php"; $m = new Medico(); $m->setnome("henrique"); $m->setsalario(1000); echo $m->getnome(); echo $m->getsalario(); echo "<br>"; $e = new Engenheiro(); $e->setnome("leonardo"); $e->setsalario(1000); echo $e->getnome(); echo $e->getsalario(); Saída: Henrique 1100 Leonardo 1000 São classes estruturais, ou seja, que estão na hierarquia de classes para servirem de base para outras classes. São classes que nunca serão instanciadas na forma de objetos. Somente suas classes filhas permitiram a criação de objetos. Para isso, devemos marcar essas classes como classes abstratas para impedir que sejam criados objetos a partir delas. Se marcarmos a classe funcionário como abstract, ou seja, abstract class Funcionario, somente poderemos criar objetos a partir de Medico e Engenheiro.
10 MÉTODOS ABSTRATOS Consiste na definição de uma assinatura na classe abstrata. Este método deverá conter uma implementação na classe filha, mas não deve possuir uma implementação na classe em que ele é definido. Métodos abstratos só existem em classes abstratas. CLASSES FINAIS Uma classe marcado como final não pode ser uma superclasse, ou seja, não pode ser base em uma estrutura de herança. Para criar uma classe folha basta inserir a palavra final na declaração da classe. MÉTODOS FINAIS Um método final não pode ser sobrescrito, ou seja, não pode ser redefinido na classe-filha. Para marcar um método como final, basta utilizar o operador final no inicio da sua declaração. CONSTANTES Para criar uma constante usamos o operador const e seu acesso de forma externa ao contexto da classe é feito pela sintaxe: NomeDaClasse::NomeDaConstante. Dentro da classe é feito pela sintaxe self::nomedaconstante. O operador self representa a própria classe.
11 MÉTODOS ESTÁTICOS CLASSE CALCULADORA Podem ser invocados diretamente da classe, sem a necessidade de instanciar um objeto para isso. Ele não devem referenciar propriedades internas pelo operador $this, porque este operador é utilizado para referenciar instancias da classe, mas não a própria classe. Podem chamar apenas outros métodos estáticos da classe ou utilizar apenas propriedades estáticas e constantes de classe. Para executar um método estático, basta utilizar a sintaxe NomeDaClasse:NomeDoMétodo(). class Calculadora{ const pi = 3.14; // constante static function soma($a, $b){ return $a + $b; static function subtracao($a, $b){ return $a - $b; static function multiplicacao($a, $b){ return $a * $b; static function divisao($a, $b){ return $a / $b; static function areacirculo($raio){ return 2 * self::pi * $raio * $raio; EXEMPLO include_once "classes/calculadora.class.php"; echo Calculadora::pi; echo Calculadora::soma(4,2); echo Calculadora::subtracao(4,2); echo Calculadora::multiplicacao(4,2); echo Calculadora::divisao(4,2); echo Calculadora::areaCirculo(1); PROPRIEDADES ESTÁTICAS São atributos de uma classe sendo dinâmicas como as propriedades de um objeto, mas estão relacionados a classe. Como a classe é a estrutura comum a todos os objetos dela derivados, propriedades estáticas são compartilhadas entre todos os objetos de uma classe. Para fazer referencia à propriedade estática dentro da classe também usamos o self.
12 CLASSE PRODUTO EXEMPLO static $quantidade; function construct(){ self::$quantidade = self::$quantidade + 1; $a = new Produto; $b = new Produto; $c = new Produto; echo Produto::$quantidade; Saída é: 3 Foram criados 3 objetos da classe Produto. O construtor da classe incrementa em 1 a variável $quantidade a cada objeto instanciado. MÉTODO TOSTRING() CLASSE PRODUTO Um objeto não foi feito para ser impresso diretamente. Quando imprimimos a referencia de um objeto com echo ou print, o PHP exibe o identificador do objeto. Cada objeto possui seu identificador próprio. Para alterar esse comportamento, definindo um método tostring() para cada classe. Caso o método tostring() exista, no momento em que mandarmos exibir um objeto no console, o PHP irá imprimir o retorno dessa função. static $quantidade; function construct(){ self::$quantidade = self::$quantidade + 1; function tostring(){ $numero = self::$quantidade; return "Eu sou o objeto $numero";
13 EXEMPLO $a = new Produto; echo $a; $b = new Produto; echo $b; $c = new Produto; echo $c; Saída é: Eu sou o objeto 1 Eu sou o objeto 2 Eu sou o objeto 3
Parte I. Orientação a objetos no PHP. Contato: <lara.popov@ifsc.edu.br> Site: http://professores.chapeco.ifsc.edu.br/lara/
Parte I Programação para WEB II Orientação a objetos no PHP Contato: Site: http://professores.chapeco.ifsc.edu.br/lara/ Programação para WEB II 1 PHP Estruturado Os programadores
Leia maisLinguagem de Programação III Herança
Linguagem de Programação III Herança Prof. Moser Fagundes Curso Técnico em Informática (Modalidade Integrada) Instituto Federal Sul-Rio-Grandense (IFSul) Campus Charqueadas Vantagens da orientação a objetos
Leia maisAULA 4 VISÃO BÁSICA DE CLASSES EM PHP
AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.
Leia maisPHP: Programando com Orientação a Objetos
PHP: Programando com Orientação a Objetos Pablo Dall'Oglio Adianti Solutions www.adianti.com.br Roteiro Conceitos de Orientação a Objetos; Classes, objetos, propriedades, métodos; Métodos construtores
Leia maisUm objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;
um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,
Leia maisHerança. Alberto Costa Neto DComp - UFS
Herança Alberto Costa Neto DComp - UFS 1 Motivação Vimos como se faz encapsulamento e a importância de fazê-lo... Contudo, também é possível fazer encapsulamento em algumas linguagens não OO O que mais
Leia maisTécnicas de Programação II
Técnicas de Programação II Aula 06 Orientação a Objetos e Classes Edirlei Soares de Lima Orientação a Objetos O ser humano se relaciona com o mundo através do conceito de objetos.
Leia maissobre rogério gonçalves gerente de projetos > digitale agência digital rogerio@digitale.com.br h7p://www.digitale.com.br h7p://leveme.
sobre rogério gonçalves gerente de projetos > digitale agência digital rogerio@digitale.com.br h7p://www.digitale.com.br h7p://leveme.la/rogerio definição - é uma forma de programar e organizar um sistema
Leia maisProgramaTchê programatche.net Programação OO com PHP
Roteiro 2 Objetivos: * Apresentar a sintaxe básica para utilização de Orientação a Objetos em PHP. Ferramentas necessárias Navegador, NetBeans, Servidor Apache. 1 Orientação a Objetos em PHP PHP é uma
Leia maisPHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof. Marcelo da Silveira Siedler siedler@gmail.com
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof. Marcelo da Silveira Siedler siedler@gmail.com SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS Introdução
Leia maisCurso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming
Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados
Leia maisUM ESTUDO PARA A EVOLUÇÃO DO PHP COM A LINGUAGEM ORIENTADA A OBJETOS
UM ESTUDO PARA A EVOLUÇÃO DO PHP COM A LINGUAGEM ORIENTADA A OBJETOS Jean Henrique Zenzeluk* Sérgio Ribeiro** Resumo. Este artigo descreve os conceitos de Orientação a Objetos na linguagem de programação
Leia maisOrientação a Objetos com Java
Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETO EM PHP
PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP O PHP através da versão 5, veio desenvolvido com suporte a programação orientada a objetos. O que significa isso? Que a partir da versão 5 é possível criar bibliotecas
Leia maisEXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS
Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor
Leia maisPROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes
Leia maisJava 2 Standard Edition Como criar classes e objetos
Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:
Leia maisATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
Leia maisARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto
Leia maisLINGUAGEM DE PROGRAMAÇÃO WEB
LINGUAGEM DE PROGRAMAÇÃO WEB GABRIELA TREVISAN Aula 4 Imagine a seguinte situação: Precisamos trafegar valores de uma página PHP para outra, porém não temos formulários entre essas páginas. Como fazer
Leia maisDesenvolvimento de Aplicações para Internet Aula 8
Desenvolvimento de Aplicações para Internet Aula 8 Celso Olivete Júnior olivete@fct.unesp.br na aula passada Orientação a Objetos Classes Objetos Construtores Destrutores 2 na aula passada Construtores
Leia maisAnálise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na
Leia maisProfº. Enrique Pimentel Leite de Oliveira
Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam
Leia maisDEFINIÇÃO DE MÉTODOS
Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 2 DEFINIÇÃO DE MÉTODOS Todo o processamento que um programa Java faz está definido dentro dos
Leia maisOrientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisPolimorfismo. Prof. Leonardo Barreto Campos 1
Polimorfismo Prof. Leonardo Barreto Campos 1 Sumário Introdução; Polimorfismo; Polimorfismo Java; Métodos Abstratos Java Classes Abstratas Java Exercício - Java Polimorfismo C++ Classe Abstrata C++; Funções
Leia maisTabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008
Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,
Leia maisIntrodução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Leia maisProgramação Orientada a Objetos em Java
Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a
Leia maisProgramação Orientada a Objetos em Java. Herança
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Herança Professor: César Melo Slides baseados em materiais preparados
Leia maisHerança. Algoritmos e Programação II. Aula 5 Herança
Algoritmos e Programação II Aula 5 Herança *Adaptado do material do Prof. Júlio Machado Herança Uma característica importante da programação orientada a objetos é permitir a criação de novas classes com
Leia maisProgramação Estruturada e Orientada a Objetos. Fundamentos Orientação a Objetos
Programação Estruturada e Orientada a Objetos Fundamentos Orientação a Objetos 2013 O que veremos hoje? Introdução aos fundamentos de Orientação a Objetos Transparências baseadas no material do Prof. Jailton
Leia maisProgramação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Classes Abstratas Técnico em Informática, M.Sc. Classes Abstratas 2 Classes Abstratas Abstração Devemos considerar as qualidades e comportamentos independentes dos objetos a que pertencem, isolamos seus
Leia maisProgramação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP
Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente
Leia maisProf. 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
Leia maisAnálise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem
Leia maisTécnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo. Conteúdo: Introdução à Orientação a Objetos
Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: Introdução à Orientação a Objetos Introdução Paradigmas de programação Programação Estruturada Composição
Leia maisProgramação Orientada a Objetos Herança Técnico em Informática. Prof. Marcos André Pisching, M.Sc.
Herança Técnico em Informática, M.Sc. Herança 2 Herança Reutilização de código Exemplo Banco: Um banco oferece diversos serviços que podem ser contratados individualmente pelos clientes. Quando um serviço
Leia mais1. Herança. Sobrescrevem métodos - redefinem métodos herdados. Subclasse herda de uma superclasse
1. Herança Herança - forma de reutilização de software Novas classes são criadas a partir de classes já existentes Absorvem atributos e comportamentos, e incluem os seus próprios Sobrescrevem métodos -
Leia maisCapítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo
Leia maisOrientação a Objetos
Orientação a Objetos Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Histórico A orientação a objetos (OO) foi concebida na década de 70. Origem na linguagem SIMULA-67 (década
Leia mais8 Classes Internas. Desenvolvimento OO com Java. Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.
Desenvolvimento OO com Java 8 Classes Internas Vítor E. Silva Souza (vitorsouza@inf.ufes.br) http://www.inf.ufes.br/ ~ vitorsouza Departamento de Informática Centro Tecnológico Universidade Federal do
Leia maisImplementando uma Classe e Criando Objetos a partir dela
Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe
Leia maisAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas Rafael Vargas Mesquita http://www.ci.ifes.edu.br ftp://ftp.ci.ifes.edu.br/informatica/mesquita/ Herança O que é herança? Herdar é derivar características de gerações precedentes.
Leia maisPHP 5. Orientado a Objetos
PHP 5 Orientado a Objetos Introdução ao PHP 5 Com as primeiras 2 versões de PHP, PHP 3 e PHP 4, conseguiram uma plataforma potente e estável para a programação de páginas do lado do servidor. Estas versões
Leia maisReuso com Herança a e Composiçã
Java 2 Standard Edition Reuso com Herança a e Composiçã ção Helder da Rocha www.argonavis.com.br 1 Como aumentar as chances de reuso Separar as partes que podem mudar das partes que não mudam. Exemplo:
Leia maisDesenvolvimento de Aplicações para Internet Aula 7
Desenvolvimento de Aplicações para Internet Aula 7 Celso Olivete Júnior olivete@fct.unesp.br Classe e tipos de dados Classe Conjunto de objetos semelhantes, isto é, com a mesma estrutura (atributos) e
Leia maisProgramação por Objectos. Java
Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/52 Herança revisão A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode
Leia maisPrototype, um Design Patterns de Criação
Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe
Leia maisLista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição
Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:
Leia maisRoteiro do Programa e Entrada/Saída
Roteiro do Programa e Entrada/Saída c Professores de ALPRO I Faculdade de Informática PUCRS 03/2012 ALPRO I (FACIN) Roteiro do Programa e E/S 03/2012 1 / 32 Sumário 1 Relembrando 2 Programa Definição de
Leia maisIntrodução à orientação a objetos. João Tito Almeida Vianna 25/05/2013
Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação
Leia maisJava. Marcio de Carvalho Victorino www.dominandoti.eng.br
Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a
Leia maisEngenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
Leia maisFUNDAMENTOS DA ORIENTAÇÃO A OBJETOS- REVISÃO
FUNDAMENTOS DA ORIENTAÇÃO A OBJETOS- REVISÃO Dado que a UML é uma ferramenta inserida no paradigma da orientação a objetos, vamos rever alguns conceitos fundamentais, dentre os quais, destacamos: Classificação,
Leia maisProva de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)
Prova de Java 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos) O programa consiste em uma aplicação que simula o comportamento de dois
Leia maisEspecificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
Leia mais3 Classes e instanciação de objectos (em Java)
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 maisUNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 05 APRESENTAÇÃO: Nesta aula vamos ver como se faz a criação de Métodos
Leia maisLinguagem de Programação III
Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado
Leia maisTópicos da Aula. Classes e Objetos. Classe Pública em Java. Classes em Java. Assinatura de Métodos. Corpo de Classes e Métodos. Conceitos de classe
DCC / ICEx / UFMG Tópicos da Aula Classes e Objetos Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Conceitos de classe Membros Construtores, métodos de classe e métodos de objeto, atributos de classe
Leia maisProgramação com Objectos. Processamento de Dados I. 4. Classes Abstractas
Programação com Objectos Processamento de Dados I 4. Classes Abstractas 1 Conceito de classe abstracta Declaração de uma classe abstracta Implicações e características das classes abstractas Utilização
Leia maisConceitos de OO AUTOLOAD. <?php function autoload($class_name) { require_once $class_name. '.php'; } $obj = new MyClass1(); $obj2 = new MyClass2();?
Conceitos de OO AUTOLOAD function autoload($class_name) require_once $class_name. '.php'; $obj = new MyClass1(); $obj2 = new MyClass2(); HERANÇA SIMPLES class SimpleClass // declaração de atributo public
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo
Leia maisOrientação à Objetos. Aécio Costa
Aécio Costa O paradigma da orientação à objetos Paradigma? Um paradigma é uma forma de abordar um problema. No contexto da modelagem de um sistema de software, um paradigma tem a ver com a forma pela qual
Leia maisUML Aspectos de projetos em Diagramas de classes
UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada
Leia maisProgramação Orientada a Objetos C++
Programação Orientada a Objetos em C++ Sumário Histórico Comparação com Java Encapsulamento Tratamento de classes e objetos Herança Polimorfismo Histórico Desenvolvido por Bjarne Stroustrup dos Bell Labs
Leia maisGeração de Código em C para Simples
Geração de Código em C para Simples José de Oliveira Guimarães Departamento de Computação UFSCar - São Carlos, SP Brasil e-mail: jose@dc.ufscar.br December 1, 2004 Este artigo descreve a tradução dos programas
Leia maisCapítulo 5 Reuso de Classes
Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Desenvolvimento Orientado a Objetos com Java Capítulo 5 Reuso de Classes
Leia maisPROGRAMANDO EM C# ORIENTADO A OBJETOS
PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 2 Domínio e Aplicação Objetos, Atributos e Métodos Classes em C# Criando Objetos em C# Referências em C# Manipulando Atributos Valores Padrão Exercícios
Leia maisSíntese das discussões do fórum Livro-APF: Julho/2010
Síntese das discussões do fórum Livro-APF: Julho/2010 Assunto: Estimativa de Aumento de Produtividade Data: 01/07/2010 Link: http://br.groups.yahoo.com/group/livro-apf/message/2577 Dúvida: Existe alguma
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 Classes abstratas Até agora, usamos interfaces toda vez que queríamos representar algum conceito abstrato
Leia maisOrientação a Objetos e a Linguagem Java
Orientação a Objetos e a Linguagem Java Afrânio Assis afranio@gmail.com Novembro/2006 1 Reutilizição com Herança e Composição Novembro/2006 2 Introdução Separar as partes que podem mudar das partes que
Leia maisCapítulo 13. Encapsulamento. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra
Capítulo 13 Encapsulamento Objetivos do Capítulo Indicar a importância do mecanismo de encapsulamento no contexto do desenvolvimento de software utilizando a programação orientada a objetos. Apresentar
Leia maisCurso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais
Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais
Leia maisProgramação com Acesso a BD. Programação com OO Acesso em Java
Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática
Leia maisNOVIDADES DO JAVA PARA PROGRAMADORES C
PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB NOVIDADES DO JAVA PARA PROGRAMADORES C Prof. Dr. Daniel Caetano 2012-1 Objetivos Apresentar o Conceito de Classes e Objetos Capacitar para a criação de objetos simples
Leia maisPara desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.
1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto
Leia maisADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS COTAS DE DISCO. Professor Carlos Muniz
ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS Trabalhando com cotas Usando o Gerenciador de Recursos de Servidor de Arquivos para criar uma cota em um volume ou uma pasta, você pode limitar o espaço em disco
Leia maisAnálise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
Leia maisEste trabalho tem como objetivo praticar o uso de tipos abstratos de dados e estruturas do tipo Lista.
Universidade Federal do Espírito Santo Departamento de Informática Estruturas de Dados I (INF09292) 1 o Trabalho Prático Período: 2013/1 Prof a Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Data de
Leia maisProgramação Orientada a Objetos em java. Polimorfismo
Programação Orientada a Objetos em java Polimorfismo Polimorfismo Uma característica muito importante em sistemas orientados a objetos Termo proveniente do grego, e significa muitas formas Em POO, significa
Leia maisProcessos Prof. João Paulo de Brito Gonçalves
Campus - Cachoeiro Curso Técnico de Informática Processos Prof. João Paulo de Brito Gonçalves 1 Conceito de Multiprogramação Se existirem vários programas carregados na memória ao mesmo tempo, a CPU pode
Leia maisA Introdução à Programação Orientada a Objetos. Programação e Sistemas de Informação
A Introdução à Programação Orientada a Objetos Programação e Sistemas de Informação Objectos (1) Objectos são coisas que temos no mundo real e abstraímos no mundo virtual para que possamos manipulá-los
Leia maisIntrodução à Programação
Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5
Leia maisProgramação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br
Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Encapsulamento Programação Orientada
Leia maisMaterial de Apoio 5. int getres() { return res; O que estas classes possuem em comum? 1) 2) 3)
pg. 1/6 Material de Apoio 5 Herança Observe o código das classes Fatorial e Fibonacci apresentados abaixo. class Fatorial { class Fibonacci { private int n, res; private int n, res; public Fatorial( int
Leia maisCurso Adonai QUESTÕES Disciplina Linguagem JAVA
1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String
Leia maisAula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Leia mais3. PARADIGMA ORIENTADO A OBJETOS
Paradigmas de Linguagens I 1 3. PARADIGMA ORIENTADO A OBJETOS Este paradigma é o que mais reflete os problemas atuais. Linguagens orientada a objetos (OO) são projetadas para implementar diretamente a
Leia maisDIFERENÇAS ENTRE FUNÇÃO E BLOCO FUNCIONAL; CRIAÇÃO DE FUNÇÃO / BLOCO FUNCIONAL; UTILIZAÇÃO NO LADDER; EXEMPLO DE BLOCO FUNCIONAL;
Boletim Técnico EP3 11/07 Utilizando Funções e Blocos Funcionais de usuário pelo software A1 19 de outubro de 2007 O objetivo deste boletim é mostrar como utilizar o recurso de Funções (Functions) e Blocos
Leia maisUNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação
SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar
Leia maisProgramação Orientada a Objetos (DPADF 0063)
Programação Orientada a Objetos (DPADF 0063) Aula 5 Herança Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno
Leia maisProgramaTchê Programação OO com PHP
Roteiro 1 Objetivos: * Apresentar conceitos de orientação a objetos; * Representar classes e objetos usando UML; Este roteiro tem como objetivo abordar os conceitos básicos de orientação a objetos. 1 Introdução
Leia maisMétodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos.
Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos. Construtor: método executado por uma CLASSE (e não por um objeto, instância da classe)
Leia maisLinguagens de Programação Aula 10
Linguagens de Programação Aula 10 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada As sentenças de controle das LP imperativas ocorrem em diversas categorias: seleção, seleção múltipla, iteração
Leia maisProgramação aplicada de computadores Andréa Maria Pedrosa Valli
Universidade Federal do Espírito Santo Laboratório de Computação de Alto Desempenho - LCAD Programação aplicada de computadores Andréa Maria Pedrosa Valli 1 Classes Parte 1 1. Classes, variáveis e funções
Leia maisIntrodução à Programação. Interface, Polimorfismo e Dynamic Binding
Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)
Leia mais2 echo "PHP e outros.";
PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento
Leia mais