Análise de código
Estive olhando alguns posts aqui sobre interface e implementei um pedaço de código, gostaria que os feras me orientassem quanto ao modelo.
iuser.php
<?php
interface iUser
{
public function login();
public function logout();
}
user.php
<?php
class user implements iUser
{
public function __construct() {}
public function login() {
echo 'User - Login!';
}
public function logout() {
echo 'User - Logout!';
}
}
iCadastro.php
<?php
interface iCadastro
{
public function cadastrar($objeto);
}
funcionario.php
<?php
class funcionario extends user implements iCadastro
{
public function __construct() {}
public function cadastrar($objeto) {
echo 'Funcionario - Cadastrar!';
}
}
gerente.php
<?php
class gerente extends funcionario
{
public function __construct() {}
public function cadastrar($objeto) {
if (get_class($objeto) === 'funcionario') {
echo 'Gerente Cadastra Funcionario!';
}else{
throw new Exception('Falha ao cadastrar funcionario!');
}
}
}
<?php
class administrador extends gerente
{
public function __construct() {}
public function cadastrar($objeto) {
if (get_class($objeto) === 'gerente') {
echo 'Administrador Cadastra Gerente!';
}else{
throw new Exception('Falha ao cadastrar Gerente!');
}
}
}
Lembrando que só estou tentando entender interfaces, e aproveitando, gostaria de outras visões de implementação desta situação acima, gostaria que alguém me explicasse como funciona o namespace, li varios tutoriais e não consegui implementar neste modelo, obrigado.
Discussão (5)
Carregando comentários...