hehaaeh, todo mundo errado! … hahaeh, jujo, esta sendo implementado, só q é uma classe interna anônima… não tem problema nenhum nisso… mais alguém tenta? :twisted:
[quote=“spier”]Deve dar erro de compilação, já que métodos de interfaces são implicitamente declarados como públicos, enquanto que na declaração
Test2()
{
Other o = new Other() {
void doStuff()
estamos tentando declarar doStuff() como private!!??[/quote]
correto! não compila! … é uma tentativa de diminuir o acesso a visibilidade do método, de public pra default… tudo em uma interface é public implicitamente, Brainn, é preciso o “;” pois não deixa de ser uma instrução de atribuição…!
não Davi, o default de um método/variável de instancia em uma classe é default mesmo, hehehe, private é diferente de acesso default, e em interfaces sim, é public implicitamente…
Acesso defaut ou acesso de pacote é quando um atributo, método ou mesmo uma classe é visível apenas pelas classes do mesmo pacote. É um “público apenas para o pacote”.
sempre o compilador irá colocar public abstract em frente aos métodos
de uma interface, mesmo que vc naum coloque! e vc quando faz o overriden do metodo nao pode/deve dimuinuir a visibilidade do metodo da superclass!