Buscar

16050514-Apostila-Programacao-PHP-e-MySQL-ExatasWeb-83

Prévia do material em texto

PHP e MySQL 
que um atributo private possa ser alterado, é necessário que seja criado um método capaz 
de alterá-lo. Vamos declarar os atributos da classe automóvel como private:
<?php
class automovel{
//atributos declarados como private
private $marca, $modelo, $ligado;
...
}
?>
Em nosso exemplo, o método que modifica os atributos $marca e $modelo é o 
próprio método construtor, enquanto que o método que modifica o estado do carro (ligado 
ou desligado) é o método estado. Repare que não há mais como alterar esses atributos sem 
que uma chamada a um desses métodos seja realizada.
Modificador protected
Este modificador é de um “nível intermediário”. Atributos ou métodos declarados 
como protected tornam-se públicos dentro da classe em que foram criados e das classes 
que herdam a classe em que eles foram criados. Fora de sua classe e suas herdeiras 
(veremos isso em Herança, logo adiante), atributos e métodos definidos como protected 
possuem a mesma restrição obtida com o modificador private.
Herança
Herança é uma forma de reutilizar uma classe. Classes podem herdar características 
de outras classes, passando a possuir todas as suas características (atributos e métodos). 
Uma classe herda características de outra classe com o uso da palavra reservada extends. 
Ex: Vamos criar a classe carroDeCorrida, que irá herdar as características da classe 
automóvel:
class carroDeCorrida extends automovel{
...
}
Pronto, agora temos uma nova classe carroDeCorrida, com os atributos $marca, 
$modelo e $ligado e os métodos ligar(), desligar() e estado(), sem que fosse necessário 
reescrever toda a classe. Qualquer modificação na classe automovel modifica também a 
calsse carroDeCorrida. Dizemos então que a classe automovel é a “classe pai” e a classe 
carroDeCorrida é a “classe filha”, pois herda as características da classe pai. Podemos agora 
criar novos atributos e métodos para a classe carroDeCorrida. Vamos criar o atributo pneu e 
o método trocaPneu para a classe carroDeCorrida:
class carroDeCorrida{
 private $pneu;
 function trocaPneu($tipoPneu){
 $this->pneu = $tipoPneu;
 }
}
83
	PHP Orientado a Objetos
	Modificadores de Acesso
	Modificador protected
	Herança

Mais conteúdos dessa disciplina