Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

João Batista Neto

1.2 - Herança de Classes

Recommended Posts

João tenho uma dúvida.

 

Quero fazer um sistema, nesse sistema existem dois tipos de usuários: Aluno e Empresa.

O usuário 'Aluno' tem acesso ao sistema nas funcionalidades X,Y e Z.

O usuário 'Empresa' tem acesso ao sistema, as funcionalidades W.

E os campos de cadastro são diferentes, entretanto possuiem : -login, -senha e -email em comum.

 

Como devo proceder:

1) vejo como classes separadas e distintas sem utilizar herança, e dou acesso a classe tipo 'Aluno' a parte X,Y e Z, e 'Empresa' a parte W.

2) Utilizo herança para proceder como uma classe usuário que tem aqueles campos em comum e tem a função acessar em comum, e as classes 'Aluno' e 'Empresa' ficam como classes filhas de usuário com cada uma seu acesso ao sistema e nesse acesso faria a restrição da parte do sistema.

Algo desse tipo eu acho:

<?php
   class Usuario {
        protected $login;
        protected $senha;
        protected $email;

    public function verificarlogin ( $login, $senha ) {
    blablalbalbla}
   }

   class Aluno extends Usuario {
    public function uploadmateria ( $material ) //um método exemplo que só o aluno pode fazer
   }

   class Empresa extends Usuario {
    public funtion publicarvaga ( $texto ) //um método exemplo que só a empresa pode fazer.
   } 


?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi a dúvida. Você deu a resposta da forma mais coerente possível.

 

 

Minha dúvida é se essa é a maneira certa de se fazer ou se seria certo eu separar como duas classes distintas sem herança... mas se assim está coerente então está ok :D

tks

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal a explicação, rapida e objetiva, lembro ter lido umas 10 páginas do livro java como programar para aprender isso direito, e aqui aprendi até como puxar assunto em um salão com 300 desconhecidos hahaha =d

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.