Não entendi a implementação da interface Pontuavel
A classe CalculadorPontuacao
recebe uma instância da classe Pontuavel
:
class CalculadorPontuacao
{
public function recuperarPontuacao(Pontuavel $conteudo)
{
return $conteudo->recuperarPontuacao();
}
}
A interface Pontuavel
diz que quem a implementar, deve também implementar o método recuperarPontuacao
:
interface Pontuavel
{
public function recuperarPontuacao(): int;
}
Mas como as classes Curso
e AluraMais
efetivamente fazem uso da classe CalculadorPontuacao
para retornar a pontuação?
Tentei fazer um teste aqui com uma instância da classe Curso
mas não consegui retornar a pontuação por $curso->recuperarPontuacao()
Dá erro:
Fatal error: Uncaught Error: Interface 'Alura\Solid\Model\Pontuavel' not found in D:\OneDrive\web\xampp\cursos\alura\php\06-solid\src\Model\Curso.php:5 Stack trace: #0 D:\OneDrive\web\xampp\cursos\alura\php\06-solid\index.php(7): require_once() #1 {main} thrown in D:\OneDrive\web\xampp\cursos\alura\php\06-solid\src\Model\Curso.php on line 5