Si escribo:
void doThis(){
System.out.println("Hello Stackoverflow.");
}
¿Cuál es el alcance predeterminado de doThis()
?
¿Público? ¿Protegido? ¿Privado?
Si escribo:
void doThis(){
System.out.println("Hello Stackoverflow.");
}
¿Cuál es el alcance predeterminado de doThis()
?
¿Público? ¿Protegido? ¿Privado?
Respuestas:
El alcance predeterminado es package-private. Todas las clases en el mismo paquete pueden acceder al método / campo / clase. Package-private es más estricto que los ámbitos públicos y protegidos, pero más permisivo que el ámbito privado.
Más información:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html
Cualquier cosa definida como paquete privado puede ser accedida por la clase misma, otras clases dentro del mismo paquete, pero no fuera del paquete, y no por subclases.
Consulte esta página para ver una práctica tabla de modificadores de nivel de acceso ...
Sin un modificador de acceso, se puede acceder a un miembro de la clase a través del paquete en el que se declara. Puede obtener más información de la Especificación del lenguaje Java, §6.6.
Los miembros de una interfaz siempre son de acceso público, ya sea que se declaren explícitamente o no.
El alcance predeterminado es "predeterminado". Es extraño: consulte estas referencias para obtener más información.
Si no está dando ningún modificador a su método, entonces, por defecto, será el modificador predeterminado que tiene alcance dentro del paquete.
Para obtener más información, puede consultar http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java