Dúvida em Agregação entre classes
Saudações aos companheiros do fórum Imaster.
Como sou novo no PHP, comecei os estudos de PHP orientado a Objetos e tive algumas dúvidas em um pequeno código sobre agregação entre classes.
Gostaria contar com a ajuda dos senhores. O código é o seguinte:
<?php
header('Content-Type: text/html; charset=utf-8');
class Produtos {
public $nome;
public $valor;
function __construct($nome = null, $valor = null) {
$this->nome = $nome;
$this->valor = $valor;
}
}
class CarrinhoCompras {
//pega as propriedades do produto
public $produto;
//configura as propriedades do produto no Array $this->produtos
public function adiciona(Produtos $produto) {
$this->produto[] = $produto;
}
//exibe todos os produtos
public function exibe() {
foreach ($this->produto as $produto) {
echo $produto->nome . "<br/>";
}
}
}
//crie duas instâncias da classe Produtos
$produto1 = new Produtos('PlayStation');
$produto2 = new Produtos('Xbox');
//cria uma instância da Classe CarrinhoCompras
$carrinho = new CarrinhoCompras();
//adiciona os produtos ao carrinho
$carrinho->adiciona($produto1);
$carrinho->adiciona($produto2);
//exibe os dados na tela
$carrinho->exibe();
Pois bem, a minha dúvida surgiu na classe CarrinhoCompras.
class CarrinhoCompras {
* //pega as propriedades do produto
public $produto;*
* //configura as propriedades do produto no Array $this->produtos
public function adiciona(Produtos $produto) {
$this->produto[ ] = $produto;*
}
Eu não entendi bem a lógica por trás da relação entre o array e o atributo $produto da classe Produtos.
Posso pensar que o atributo $produto servirá para guardar os dados provenientes da classe Produtos ?
Discussão (4)
Carregando comentários...