PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.
Moderadores: Administradores, Moderadores
por riapa » Sexta Dez 14, 2007 21:26
Boas!
É possível criar 1 classe que herde apenas determinados métodos/propriedades, de uma outra? ou é sempre cópia na integra?
Existe alguma outra maneira de aceder a métodos de outras classes sem ser por herança?
E apenas a determinados métodos, não os querendo ter públicos, ou seja a ideia é que a classe B herde apenas o método abc da classe A.
Thx

-

riapa
- Membro Diamante

-
- Mensagens: 1144
- Registado: Terça Jan 03, 2006 18:23
por vamosAeles » Segunda Dez 17, 2007 14:18
riapa Escreveu:É possível criar 1 classe que herde apenas determinados métodos/propriedades, de uma outra? ou é sempre cópia na integra?
Sim, se os restantes forem privados, senão são herdados.
riapa Escreveu:Existe alguma outra maneira de aceder a métodos de outras classes sem ser por herança?
....hum.... claro.... 'é chamá-los'....
riapa Escreveu:E apenas a determinados métodos, não os querendo ter públicos, ou seja a ideia é que a classe B herde apenas o método abc da classe A.
Nepias, isso vai totalmente contra o conceito de herança e polimorfismo.
Para isso todos os outros terão de ser privados...
-
vamosAeles
- Membro de Prata

-
- Mensagens: 206
- Registado: Quarta Jan 04, 2006 21:29
- Localização: Lisboa/Proença
por riapa » Segunda Dez 17, 2007 18:31
vamosAeles Escreveu:riapa Escreveu:Existe alguma outra maneira de aceder a métodos de outras classes sem ser por herança?
....hum.... claro.... 'é chamá-los'....
Esqueci-me de dizer que essa chamada seria feita dentro de outra classe...

-

riapa
- Membro Diamante

-
- Mensagens: 1144
- Registado: Terça Jan 03, 2006 18:23
por vamosAeles » Terça Dez 18, 2007 10:07
Desde que seja público (ou protected se o scope for dentro do mesmo package), podes chamar uma função em 'qualquer lugar'. Se for estática podes logo 'chamá-la', se não primeiro tens que instanciar a classe e depois executar a função sobre a instância.
[[[]]]
-
vamosAeles
- Membro de Prata

-
- Mensagens: 206
- Registado: Quarta Jan 04, 2006 21:29
- Localização: Lisboa/Proença
por riapa » Terça Dez 18, 2007 18:59
Pois dá me erro a aceder ao scope diz que não consegue... pk?
-

riapa
- Membro Diamante

-
- Mensagens: 1144
- Registado: Terça Jan 03, 2006 18:23
por vamosAeles » Terça Dez 18, 2007 22:47
Boas, ... se postasses o código talvez fosse mais fácil de perceber porquê

-
vamosAeles
- Membro de Prata

-
- Mensagens: 206
- Registado: Quarta Jan 04, 2006 21:29
- Localização: Lisboa/Proença
por riapa » Quinta Dez 20, 2007 15:25
Já não é necessário, tive um ataque de burrice na altura lool mas já me lembrei como é que se resolvia!
Thx

-

riapa
- Membro Diamante

-
- Mensagens: 1144
- Registado: Terça Jan 03, 2006 18:23
Voltar para Programação
Quem está ligado:
Utilizadores a ver este Fórum: Nenhum utilizador registado e 4 visitantes