Em PHP, as classes são uma das funcionalidades mais poderosas da programação orientada a objetos (OOP). Elas permitem encapsular dados e funcionalidades em um único bloco de código. Vamos explorar como criar e utilizar classes em PHP com exemplos práticos.
Como Definir uma Classe
Para criar uma classe em PHP, usamos a palavra-chave class
, seguida do nome da classe. Dentro da classe, podemos definir propriedades e métodos. Veja um exemplo simples:
class Carro {
public $modelo;
public $cor;
public function __construct($modelo, $cor) {
$this->modelo = $modelo;
$this->cor = $cor;
}
public function exibirDetalhes() {
echo "Modelo: " . $this->modelo . ", Cor: " . $this->cor . ".";
}
}
$meuCarro = new Carro("Fusca", "azul");
$meuCarro->exibirDetalhes();
Esse código define uma classe chamada Carro
, com duas propriedades $modelo
e $cor
, e um método exibirDetalhes()
que exibe as informações do carro. O construtor __construct
é utilizado para inicializar as propriedades ao criar uma nova instância da classe.
Instanciando uma Classe
Para instanciar uma classe, usamos a palavra-chave new
, seguida do nome da classe. O exemplo acima já mostra como criar um objeto da classe Carro
e chamar o método exibirDetalhes()
.
Herança em PHP
PHP permite que uma classe herde propriedades e métodos de outra classe. Isso é feito usando a palavra-chave extends
. Veja um exemplo de como funciona a herança:
class Veiculo {
public $marca;
public function __construct($marca) {
$this->marca = $marca;
}
public function exibirMarca() {
echo "Marca: " . $this->marca . ".";
}
}
class Carro extends Veiculo {
public $modelo;
public function __construct($marca, $modelo) {
parent::__construct($marca);
$this->modelo = $modelo;
}
public function exibirDetalhes() {
echo "Marca: " . $this->marca . ", Modelo: " . $this->modelo . ".";
}
}
$meuCarro = new Carro("Volkswagen", "Fusca");
$meuCarro->exibirDetalhes();
No exemplo acima, a classe Carro
herda da classe Veiculo
, utilizando o método parent::__construct
para chamar o construtor da classe pai e inicializar a propriedade $marca
. Isso demonstra como a herança funciona em PHP.
Encapsulamento
O encapsulamento permite que você controle o acesso às propriedades de uma classe. Em PHP, isso é feito utilizando os modificadores de visibilidade public
, private
e protected
.
class ContaBancaria {
private $saldo;
public function __construct($saldoInicial) {
$this->saldo = $saldoInicial;
}
public function depositar($valor) {
$this->saldo += $valor;
}
public function exibirSaldo() {
echo "Saldo: " . $this->saldo . " reais.";
}
}
$conta = new ContaBancaria(1000);
$conta->depositar(500);
$conta->exibirSaldo();
No exemplo acima, a propriedade $saldo
é private
, o que significa que ela não pode ser acessada diretamente de fora da classe. Para manipulá-la, usamos métodos públicos como depositar
e exibirSaldo
.
Considerações Finais
As classes em PHP são uma ferramenta poderosa para organizar o código e promover a reutilização. O uso de conceitos como herança e encapsulamento permite que você crie sistemas mais eficientes e seguros. Sempre use boas práticas de OOP para escrever código mais limpo e fácil de manter.