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

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

Tópicos avançados em internet A

Apresentações semelhantes


Apresentação em tema: "Tópicos avançados em internet A"— Transcrição da apresentação:

1 Tópicos avançados em internet A
Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação

2 PHP Orientação a objetos
Créditos: baseado no material da Profa Beatriz Wilges – SENAC SC

3 As palavras-chave private e protected; Métodos abstratos e interfaces;
Sumário Definindo uma classe; Como criar uma classe; As palavras-chave private e protected; Métodos abstratos e interfaces; A palavra-chave final; Construtores e destrutores; Variáveis e métodos estáticos. 3

4 Recordando uma função Agrupamento de código Representa uma ação
Escopo “local” function my_func($arg1,$arg2) { << function statements >> }

5 O que representa uma classe ?
Conceitualmente representa um objeto com seus métodos e atributos

6 Definindo uma classe Como criar uma classe A sintaxe é a seguinte:
Class nome_classe { public var $nome <atributos> public function foo(){ ... } <metodos> } 6

7 Definindo uma classe Uma classe pode conter várias variáveis e funções. Para criar variáveis dentro de uma classe, usamos a instrução var. Podemos utilizar $this para referenciar um objeto. Para criar um objeto de uma determinada classe utilizamos a instrução new. Para acessar os atributos e metodos dentro de uma classe devemos utilizar o símbolo -> Usar somente um $ $cao->nome e não $cao->$nome Uma classe pode conter várias funções e variáveis.

8 Usando uma classe <?php
Class dog { public var $nome; public function latir(){ echo “au au “; } } ?> <?php require(‘dog.class.php’); $cao = new dog(); $cao->name = ‘Toto’; echo “{$cao->nome} diz ”; $puppy->latir(); ?>

9 Programação orientada a objetos no PHP 5
Ocorreu o amadurecimento da linguagem no que diz respeito à programação orientada a objetos. A partir dessa versão o PHP passa a operar com o Zend Engine 2.0, utilizando um novo modelo de objetos. Esse modelo gerou significativos ganhos em termos de velocidade e performance, porque ele é mais otimizado e realiza muito menos cópias redundantes de dados.

10 As palavras-chave private e protected
Com essas palavras podemos criar métodos ou variáveis privadas ou protegidas em uma classe. Uma variável privada só poderá ser acessada pela própria classe onde ela foi declarada. Já a variável protegida poderá ser acessada também pelas subclasses da classe onde ela foi declarada.

11 Métodos abstratos e interfaces
É possível criar métodos abstratos. Isto significa que o método é apenas declarado, mas sua implementação não é fornecida. Isto será feito posteriormente em outra classe. No PHP 5 também temos a possibilidade de criar interfaces. Nelas, inserimos apenas as declarações dos métodos que farão parte da classe que irá implementá-la. A diferença entre os métodos abstratos e interfaces é que uma classe pode implementar diversas interfaces. Utilizamos a palavra implements para indicar que uma classe implementa uma determinada interface.

12 Métodos abstratos <?php abstract class ClasseAbstrata {
abstract public function teste( ); } class ClasseImplementacao extends ClasseAbstrata{ public function teste( ){ echo “Método teste( ) chamado!<br>”; $obj = new ClasseImplementacao; $obj->teste( ); ?>

13 Interfaces <?php interface MinhaInterface{ public function Teste();
} class MinhaClasse implements MinhaInterface{ public function Teste( ){ //... ?>

14 A palavra-chave final <?php class MinhaClasse{
Os métodos que forem declarados com a palavra final não poderão ser sobrescritos pelas subclasses. Exemplo: <?php class MinhaClasse{ final function Teste( ) { // … } ?> Se fosse declarado um método com o nome Teste em uma subclasse de MinhaClasse, ele não iria sobrescrever o método declarado como final.

15 A palavra-chave final <?php final class MinhaClasse{ // } ?>
Também é possível declarar uma classe como final. Exemplo: <?php final class MinhaClasse{ // } ?> Isso significa que ela não poderá ter subclasses.

16 Construtores Um construtor consiste em um método que será chamado toda vez que for criado um objeto da classe onde ele for declarado. Pode ser utilizado para inicializar um objeto antes dele ser usado. Ele deve ser criado com o nome _construct( ).

17 Construtores <?php class Classe { function _construtor ( ) {
print “Esse é o construtor da Classe<br>; } class SubClasse extends Classe { function _construct ( ) { parent::_construct( ); print “Esse é o construtor da SubClasse<br>; $obj = new Classe( ); $obj = new Subclasse( ); ?>

18 Destrutor O destrutor é nomeado como _destruct( ).
É um método que será chamado após a última referência feita a um objeto no programa, antes da liberação da memória. Pode ser útil para fins de depuração, fechamento de conexão com banco de dados, entre outras tarefas.

19 Destrutor <?php class MinhaClasse [ function _construct ( ) {
$this->nome = “MinhaClasse”; print “Este é o contrutor da classe“ . $this->nome . “<br>”; } function _destruct ( ) { print “Este é o destrutor da classe” . $this->nome . “<br>”; $obj = new MinhaClasse ( ); ?>

20 Variáveis e métodos estáticos
As variáveis estáticas podem ser inicializadas. No PHP 5 a palavra static pode ser utilizada para definir um método como estático. Com isso, é possível chamá-lo mesmo sem a criação de um objeto para a classe onde ele foi declarado.

21 Variáveis e métodos estáticos
<?php class Classe { static $variavel_estatica = 10; } print Classe::$variavel_estatica; ?>

22 Variáveis e métodos estáticos
<?php class Classe { public static function MetodoEstatico ( ) { // … } Classe::MetodoEstatico( ); ?>


Carregar ppt "Tópicos avançados em internet A"

Apresentações semelhantes


Anúncios Google