Se digito:Qual è l'ambito predefinito di un metodo in Java?
void doThis(){
System.out.println("Hello Stackoverflow.");
}
qual è l'ambito predefinito di doThis()
?
Pubblico? Protetta? Privato?
Se digito:Qual è l'ambito predefinito di un metodo in Java?
void doThis(){
System.out.println("Hello Stackoverflow.");
}
qual è l'ambito predefinito di doThis()
?
Pubblico? Protetta? Privato?
L'ambito predefinito è pacchetto-privato. Tutte le classi nello stesso pacchetto possono accedere al metodo/campo/classe. Il pacchetto-privato è più rigido degli ambiti protetti e pubblici, ma più permissivo dell'ambito privato.
Ulteriori informazioni:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html
L'ambito predefinito è "predefinito". È strano - vedi thesereferences per maggiori informazioni.
In realtà non lo è: è il pacchetto privato –
THANK Maurice, ho aggiornato la mia risposta. –
Non riesco a cancellare la mia risposta in quanto è stata accettata. Invito Joe ad andare con la risposta di @ Esko! –
Tutto definito come pacchetto privato può accedere dalla classe stessa, altre classi all'interno dello stesso pacchetto, ma non all'esterno del pacco, e non da sottoclassi .
Vedi this page per un tavolo a portata di mano di modificatori del livello di accesso ...
Grazie per essere l'unico a riconoscere una fonte attendibile. –
Senza un modificatore di accesso, un membro della classe è accessibile in tutto il pacchetto in cui è dichiarata. Per ulteriori informazioni, consultare lo Java Language Specification, §6.6.
I membri di un'interfaccia sono sempre accessibili al pubblico, sia esplicitamente dichiarati che non.
+1 per ulteriori informazioni sui membri di un'interfaccia. – Wazza
Se non si assegna alcun modificatore al metodo, come impostazione predefinita sarà il modificatore di Default che ha scope all'interno del pacchetto.
per maggiori informazioni è possibile consultare http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java
Java 8 ora consente l'attuazione di metodi all'interno di una stessa interfaccia con i predefinita portata (e statico solo).
risposta molto migliore - @ joe - vai con questo, non il mio. –
"L'impostazione predefinita del pacchetto è più rigida di ..." – reinaldoluckman
Potrebbe anche essere opportuno ricordare che "pacchetto-privato" è un buon margine da utilizzare quando si espongono i metodi per il test dell'unità esterna. –