. JAVA modificadores de acceso

Los modificadores de acceso, como su nombre indica, determinan desde qué clases se puede acceder a un determinado elemento. En Java tenemos 4 tipos: public,private, protected y el tipo por defecto, que no tiene ninguna palabra clave asociada, pero se suele conocer como default o package-private. Si no especificamos ningún modificador de acceso se utiliza el nivel de acceso por defecto, que consiste en que el elemento puede ser accedido sólo desde las clases que pertenezcan al mismo paquete. El nivel de acceso public permite a acceder al elemento desde cualquier clase, independientemente de que esta pertenezca o no al paquete en que se encuentra el elemento.

private, por otro lado, es el modificador más restrictivo y especifica que los elementos que lo utilizan sólo pueden ser
accedidos desde la clase en la que se encuentran. Este modificador sólo puede utilizarse sobre los miembros de una clase y sobre interfaces y clases internas, no sobre clases o interfaces de primer nivel, dado que esto no tendría sentido. Es importante destacar también que private convierte los elementos en privados para otras clases, no para otras instancias de la clase. Es decir, un objeto de una determinada clase puede acceder a los miembros privados de otro objeto de la misma clase, por lo que algo como lo siguiente sería perfectamente válido: El modificador protected, por último, indica que los elementos sólo pueden ser accedidos desde su mismo paquete (como el acceso por defecto) y desde cualquier clase que extienda la clase en que se encuentra, independientemente de si esta se encuentra en el mismo paquete o no. Este modificador, como private, no tiene sentido a nivel de clases o interfaces no internas.

http://www.ingenieriasw.com/modificadoresaccesojava http://mundogeek.net/archivos/2009/03/30/modificadores-en-java/

en una cáscara de nuez modificadores de acceso son palabras clave que controlan la visibilidad de los miembros de la clase y otras construcciones de código. privado 3. Así. o se restringen de manera que las clases sólo en el espacio de nombres o programa actual puede usarlos.. NET son 1. No hay código utilizando una instancia de la clase pueden tener acceso a un miembro privado y no se puede una clase derivada. protegido 4. No se puede acceder a las clases derivadas . Por objetos de la clase 2. La información o funcionalidad que no se necesita o no tiene sentido fuera del contexto de una clase específica debe ser privado. público 2. interno 5. Los casos de acceso 1. Los modificadores de acceso son palabras clave agregadas a la clase. protected internal público Público se refiere a la vista de todos y en todas partes. Los miembros del grupo se puede restringir para que sólo las clases derivadas pueden utilizar. Los modificadores de acceso en. En las clases derivadas privado Privado significa oculto y utilizable sólo por la propia clase. No se puede tener acceso a objetos 2. estructura o declaración de miembro para especificar estas restricciones. NET modificadores de acceso Introducción Las clases y estructuras se pueden restringir para que sólo el programa o espacio de nombres que se declaran en los puede usar. Los casos de acceso 1.

ya que son accesibles sólo por la clase contenedora. Se puede acceder por unas clases derivadas En otro conjunto (interno) . Nota: que es ilegal para combinar dos modificadores de acceso para una clase. En las clases derivadas En otro conjunto (interno) 1. No se puede tener acceso a objetos 2. Por objetos de la clase 2. Los casos de acceso 1. miembros protegidos también puede ser utilizado por una clase descendiente. 1. 1.protegido Los miembros protegidos son similares a los privados. No se puede tener acceso a objetos 2. Interna es útil cuando usted no quiere permitir que las otras asambleas para tener la funcionalidad. Los miembros marcados como protegidos interna se puede acceder sólo por una clase descendiente que está contenida en el mismo ensamblado que la clase base. Los casos de acceso En conjunto misma (protegido). pero privado a los ensamblados externos. No se puede tener acceso a objetos 2. No se puede acceder a las clases derivadas protected internal Por último. tenemos el modificador compuesto acceso sólo se permite en. Usted uso protegido interno en situaciones en las que desea denegar el acceso a partes de la funcionalidad de una clase 'a todas las clases descendientes se encuentran en otras aplicaciones. En las clases derivadas interno Interna son públicos a toda la asamblea. Los casos de acceso En el montaje mismo (público). Así que los miembros que puedan ser necesarias por una clase descendiente debe estar marcado protegido. pero sólo se puede aplicar a los miembros. Sin embargo. NET.

interno o privado.+ -------------------+ | Por clase derivada | No | Sí | Sí | Sí | Sí (misma Asamblea) | + -----------------.+ ---------. No se puede tener acceso a objetos 2.+ ----------.com/forums/showthread. son siempre públicos.1.+ -------.+ ----------.+ -------.+ --------.+ ---------.go4expert. mientras que los espacios de nombres propios.+ | | Privada | protegida | pública | interno | protegida interna | + -----------------.+ --------.+ ----------. Las clases en los espacios de nombres son internos por defecto y puede ser interna o pública. pero no pueden ser privados o protegidos. Los miembros de una estructura son privadas por defecto y se puede dar modificadores de acceso público.+ ---------.+ -------------------+ | Por objeto | No | No | Sí | Sí | No | + -----------------. No se puede acceder a las clases derivadas Punto a recordar Los miembros de interfaz y enumeración siempre son públicos y no se necesitan modificadores de acceso (o permitido). Para resumirlo Código + -----------------.+ ----------.php?t=2154 .+ --------.+ -------.+ -------------------.+ -------------------+ http://www.+ -------.+ ---------.+ --------.