vai dar erro, ta usando o operador new pra uma chamada de metodo, acho q isso n pode… (alem do metodo nao estatico estar sendo chamado de forma erronea)…
se mudace pra:
newSub().callStuff();
ateh q funcionaria…
M
matheusPJ
afff, errei ao digitar... vai os parenteses sim, ai ta o código corrigido, agora sim.. valendo.. hehehehehe, qq vai da nesse código?
pq em s.doStuff(), ta acecando por uma instancia… e ta como protected… n vai compilar…
M
mauro_germanoPJ
Quando voce compilar ocorrera um erro, ao tentar acessar um membro private de uma classe por uma classe que nao seja do mesmo pacote ou por uma subclasse por heranca, voce tera um erro de compilacao.
M
matheusPJ
:roll: private? … o exemplo ta usando protected …usando private vai dar erro até se tu só imaginar q o atributo existe heaheahea
P
phstcPJ
"matheus":
"mauro_germano":
Quando voce compilar ocorrera um erro, ao tentar acessar um membro private de uma classe por uma classe que nao seja do mesmo pacote ou por uma subclasse por heranca, voce tera um erro de compilacao.
:roll: private? ... o exemplo ta usando protected :) ..usando private vai dar erro até se tu só imaginar q o atributo existe heaheahea
Vejam se eu estou certo, no final das contas vai dar erro na linha:
[code]System.out.println( "super " + s.doStuff() ); [/code
Pq o metodo doStuff() e do tipo protected, e somente pode ser chamando por classes que extendam a classe que tem este metodo.
Estou certo???{
Eu acho que também metodos protecteds podem ser chamados por classes do mesmo package, mesmo não extendendo a classe do metodo, estou certo em relação a esta afirmação?
}
M
matheusPJ
certo! 8)
M
mauro_germanoPJ
Assim como voce “errou” (se enganou) ao esquecer os parenteses eu tambem “errei”(me enganei) ao escrever private, onde voce ver private leia-se “protected”.
:roll: private? … o exemplo ta usando protected …usando private vai dar erro até se tu só imaginar q o atributo existe heaheahea