A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1.

Apresentações semelhantes


Apresentação em tema: "Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1."— Transcrição da apresentação:

1 Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1

2 Sumário 2 Abstração; Polimorfismo; Interfaces.

3 Prof.: Sergio Pacheco Abstração 3 São classes que nunca serão instanciadas na forma de objetos, somente suas classes filhas serão; Para dizermos que uma classe é abstrata basta informarmos a palavra chave abstract.

4 Prof.: Sergio Pacheco Abstração 4 valor = $valor; } public function getValor() { return $this->valor; } public function calculaJuros() { return $this->valor; } } class ChequeComum extends Cheque { public function calculaJuros() { return $this->valor * 1.25; // calcula 25% em cima do valor; } } class ChequeEspecial extends Cheque { public function calculaJuros() { return $this->valor * 1.10; // calcula 10% em cima do valor; } } /* * Tentando instanciar a classe Cheque. * Isto vai causar um Fatal Error, pois ela é abstrata e não pode ser instanciada. */ $cheque = new Cheque(); ?>

5 Prof.: Sergio Pacheco Abstração 5 class ChequeComum extends Cheque { public function calculaJuros() { return $this->valor * 1.25; // calcula 25% em cima do valor; } class ChequeEspecial extends Cheque { public function calculaJuros() { return $this->valor * 1.10; // calcula 10% em cima do valor; } /* * Tentando instanciar a classe Cheque. * Isto vai causar um Fatal Error, pois ela é abstrata e não pode ser instanciada. */ $cheque = new Cheque(); ?>

6 Prof.: Sergio Pacheco Métodos Abstração 6 Assim como classes, os métodos abstratos também são criados apenas para estruturação das classes filhas. Às vezes queremos que as classes derivadas de uma classe pai tenham obrigatoriamente um método específico, para garantir que não haja conflito em outros métodos que dependem desse primeiro; Quando se usa métodos abstratos, faz com que as classes filhas implementes esses métodos.

7 Prof.: Sergio Pacheco Métodos Abstratos 7 valor; // não há juros; } ?>

8 Prof.: Sergio Pacheco Interfaces 8 Interfaces de Objetos permite a criação de código que especifica quais métodos e variáveis uma classe deve implementar, sem ter que definir como esses métodos serão tratados; Interfaces são definidas usando a palavra-chave 'interface', da mesma maneira que uma classe comum, mas sem nenhum dos métodos ter seu conteúdo definido; Todos os métodos declarados em uma interface devem ser public, essa é a natureza de uma interface.

9 Prof.: Sergio Pacheco Interface 9 // Declara a interface seila' interface seila{ public function setVariable($name, $var); public function getHtml($template); } // Implementa a interface // Isso funcionará class Template implements seila{ private $vars = array(); public function setVariable($name, $var){ $this->vars[$name] = $var; } public function getHtml($template){ foreach($this->vars as $name => $value) { $template = str_replace('{'. $name. '}', $value, $template); } return $template; } Precisa obrigatoriamente implementar todos os seus métodos

10 Prof.: Sergio Pacheco Exercício 10

11 Prof.: Sergio Pacheco Bom Final de Semana - Sucesso 11 Ótimo Final de semana a Todos! Deus abençoe!


Carregar ppt "Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1."

Apresentações semelhantes


Anúncios Google