| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 17:48:51
|
pardal_nb
Virtual Machine Man
Membro desde: 12/09/2006 08:26:06
Mensagens: 672
Offline
|
Opa,
pessoal, membros (atributos e metodos) privados sao herdados ou não? Pode parecer besta essa pergunta, mas olhando o livro da Kath vi q ela fala q nao eh herdado...e ao meu ver, herdar eh uma coisa, ter acesso é outra...
flw
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 17:49:45
|
fec
JavaChild
![[Avatar]](/images/avatar/7e44f6169f0ae75b943cafb5acdb4449.png)
Membro desde: 04/04/2007 14:34:25
Mensagens: 100
Offline
|
Never!!!
|
"Qualquer coisa é a mesma coisa" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 18:05:03
|
LPJava
Forum Spammer
![[Avatar]](/images/avatar/75ac2c91d93efba8651671f18ec013d0.png)
Membro desde: 18/04/2006 12:50:23
Mensagens: 3758
Localização: Bahia
Online
|
pardal to discutindo isso contigo desde de manha e tu sabe o q acho uhauhaua entao nao herda... um exemplo classico.
"seu pai tem uma cueca que é private, algo pessoal dele, vc nao vai querer herdar uma cueca dele ne? pq é algo pessoal e foi declardo como private." Agora tu vai querer herdar a casa, o carro etc..
entao aquilo que é pessoal tu declara como private..
flw"
|
Sun Certified Java Programmer 5.0
Blog! Atualizado 14/11 CVS ee sua importancia http://camilolopes.wordpress.com
Colunista Java - Imasters http://www.imasters.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 18:14:15
|
saoj
Forum Spammer
![[Avatar]](/images/avatar/2e7ceec8361275c4e31fee5fe422740b.jpg)
Membro desde: 09/03/2004 23:34:46
Mensagens: 2103
Localização: RJ, BRA
Offline
|
Never, mas com umas sacanagens de reflection eu vejo ela...
|
- "Prefiro proclamar abertamente aos homens, baseando-me no meu conhecimento da realidade, aquilo que lhes seja útil, ainda que ninguém o compreenda, a dar, sob o caloroso aplauso da multidão, o meu acordo em tolices." (Epicuro)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 18:59:58
|
acopiara
JavaChild
![[Avatar]](/images/avatar/720788047c0f22a0d3b25150007b2618.jpg)
Membro desde: 14/11/2006 17:15:33
Mensagens: 149
Offline
|
Como saoj disse, via reflection dar para ler os atributos privados.
Dessa forma:
[]'s
|
--
Alysson Bandeira |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 19:01:50
|
crpablo
JavaGuru
![[Avatar]](/images/avatar/8069a0ddc3a9e6fbcce919955738fc73.jpg)
Membro desde: 09/11/2007 14:48:58
Mensagens: 226
Localização: Floripa/Brazil
Offline
|
"Membros marcados como privados não podem ser acessados por código em nenhuma outra classe que não aquela na qual o membro privado foi declarado."
"Quando um membro é declarado como privado uma subclasse não pode herdar dele."
Fonte: Certificação Sun para Programador Java? 5.
SCJP Exame 310-055
|
Pablo
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 19:16:34
|
sergiotaborda
Forum Spammer
Membro desde: 22/03/2005 20:57:48
Mensagens: 1897
Offline
|
pardal_nb wrote:Opa,
pessoal, membros (atributos e metodos) privados sao herdados ou não? Pode parecer besta essa pergunta, mas olhando o livro da Kath vi q ela fala q nao eh herdado...e ao meu ver, herdar eh uma coisa, ter acesso é outra...
Não. São a mesma coisa.
Se algo não é herdado isso significa que não pertence ao escopo do objeto filho. Se não pertence ao escopo não ha como ter acesso. Se ele é private ele não pertence ao escopo do objeto filho, logo não tem acesso.
Reflection não vem ao caso porque o livro da Kathy não se mete por ai.
|
Sérgio Taborda's Weblog
http://sergiotaborda.wordpress.com
Dados X Domínio : A Batalha |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 21:38:48
|
LPJava
Forum Spammer
![[Avatar]](/images/avatar/75ac2c91d93efba8651671f18ec013d0.png)
Membro desde: 18/04/2006 12:50:23
Mensagens: 3758
Localização: Bahia
Online
|
crpablo wrote:"Membros marcados como privados não podem ser acessados por código em nenhuma outra classe que não aquela na qual o membro privado foi declarado."
"Quando um membro é declarado como privado uma subclasse não pode herdar dele."
Fonte: Certificação Sun para Programador Java? 5.
SCJP Exame 310-055
eu ja falei isso para ele, scanei a pag e envei mais ele nao acredita... ohh my god!
|
Sun Certified Java Programmer 5.0
Blog! Atualizado 14/11 CVS ee sua importancia http://camilolopes.wordpress.com
Colunista Java - Imasters http://www.imasters.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 21:42:27
|
Lintz_net
Thread.start()
Membro desde: 02/08/2006 15:27:06
Mensagens: 25
Offline
|
Cara, eu não me lembro onde, mas eu já li que os membros private são herdados, porém, não são acessados... só não lembro onde foi que eu li.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 21:48:36
|
Andre Brito
Forum Spammer
![[Avatar]](/images/avatar/4dff7cccfc092f41b8170fc6d7dc93c0.jpg)
Membro desde: 21/07/2007 17:44:31
Mensagens: 1088
Localização: Paraná
Offline
|
Foi mal chegar assim, mas se eu precisasse de um atributo que só as subclasses pudessem acessar, quem eu usaria? Protected ou public? Se eu usar publc ficaria uma variável global :S
This message was edited 1 time. Last update was at 21/12/2007 21:49:46
|
balboa is jamming.
"We couldn't find a good UML tool for our community. So our community built one. You guys are awesome."
TopCoder
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 21:53:39
|
pardal_nb
Virtual Machine Man
Membro desde: 12/09/2006 08:26:06
Mensagens: 672
Offline
|
Lintz_net wrote:Cara, eu não me lembro onde, mas eu já li que os membros private são herdados, porém, não são acessados... só não lembro onde foi que eu li.
foi aki:
http://ctp.di.fct.unl.pt/lei/lp1/teoricas/28.html
???
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 21:57:27
|
Andre Brito
Forum Spammer
![[Avatar]](/images/avatar/4dff7cccfc092f41b8170fc6d7dc93c0.jpg)
Membro desde: 21/07/2007 17:44:31
Mensagens: 1088
Localização: Paraná
Offline
|
Mas e qual seria a vantagem de herdar e não acessar?
Continuo com a pergunta feita pela minha pessoa acima.
|
balboa is jamming.
"We couldn't find a good UML tool for our community. So our community built one. You guys are awesome."
TopCoder
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 22:06:42
|
pardal_nb
Virtual Machine Man
Membro desde: 12/09/2006 08:26:06
Mensagens: 672
Offline
|
sabe o q eh HERANÇA ??
me fala o q é ?!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 22:30:32
|
sergiotaborda
Forum Spammer
Membro desde: 22/03/2005 20:57:48
Mensagens: 1897
Offline
|
Ai diz o seguinte :
A generalidade dos métodos de instância das superclasses são herdados pelas subclasses, ficando a fazer parte destas. Exceptuam-se:
* os métodos privados
* os métodos não-privados que são redefinidos
Um subclasse não tem qualquer forma de acesso aos métodos não-herdados privados (pois claro, eles são privados!). Também não consegue aceder directamente aos métodos não-herdados redefinidos.
É bem claro.
(...)
Todas as variáveis de instância das superclasses (mesmo as variáveis private) são herdadas pelas subclasses, ficando a fazer parte dos seus objectos. No entanto a subclasse fica sem acesso
* às variáveis herdadas privadas
Essa é engraçada... herda mas não tem acesso...
a explicação é esta
Precaução 1
Nem todos os livros se entendem relativamente à definição do termo herança.
Nós adoptamos a visão de que se consideram herdadas todas as componentes da superclasse que são reutilizadas na implementação dos objectos da subclasse. Esta visão permite discutir a implementação dos objectos com maior clareza.
A outra visão considera que só são herdadas as componentes que ficam directamente visíveis na subclasse. Esta visão é confusa pois obriga a esclarecer que, certas componentes da superclasse, apesar de se dizerem não-herdadas, são reutilizadas na implementação dos objectos das subclasses, estando disponíveis para acesso indirecto dentro da subclasse.
Eles não seguem a mesma "visão" que as pessoas normais.
This message was edited 3 times. Last update was at 21/12/2007 22:34:48
|
Sérgio Taborda's Weblog
http://sergiotaborda.wordpress.com
Dados X Domínio : A Batalha |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/12/2007 23:18:10
|
Dieval Guizelini
JavaEvangelist
![[Avatar]](/images/avatar/9fc92b9c69b711dcb880ccb743fc6f06.jpg)
Membro desde: 05/07/2006 14:39:44
Mensagens: 464
Localização: Curitiba - PR
Offline
|
Senhores,
1. herança sempre herda tudo (absolutamente tudo) da classe pai.
2. herança deve ser usado para "especializar" uma classe, ou seja, ampliar o escopo ou fazer algo para situações particulares.
Exemplo classico:
observe que se o objetos da classe Quadrado não tivesse herdado os atributos e métodos, o seu funcionamento não seria o mesmo.
fw
This message was edited 2 times. Last update was at 21/12/2007 23:19:56
|
Sun Certified Java Programmer 5.0 |
|
|
 |
|
|