Sunteți pe pagina 1din 3

ENCAPSULAMIENTO DE DATOS

Una Clase es una coleccin de atributos (variables) y mtodos (funciones) uno de


los aspectos ms importantes de la Programacin Orientada a Objetos es el
ocultamiento de datos dentro de una clase, y hacer que estn disponibles solamente a
travs de los mtodos. Esta tcnica es usualmente conocida a menudo como
ENCAPSULACIN por que este cierra hermticamente los datos de la clase dentro
de la capsula de seguridad.
Los miembros (atributos y funciones) de una clase pueden ser: publicos (public),
privados (private), protegidos (protected).
A los datos pblicos se puede acceder desde cualquier clase externa, a los datos
privados slo se puede acceder dentro del mbito de la misma clase.
Los datos miembros protegidos significan que slo se puede acceder a ellos por
mtodos miembros dentro de la misma clase y por funciones miembro de clases
derivadas de esta clase.
Nota.- para asignar valores a los atributos de las clases utilizaremos la palabra set.
Y para obtener los valores de los atributos utilizaremos la palabra get
Ejemplo
La clase Persona tiene dos variables: nombre y edad. La variable nombre es de tipo
privado (private) y la variable edad es de tipo publico (public).
class Persona
{
private String nombre;
int edad;

variable privada
variable por defecto publica

void setNombre(String N)
{
nombre=N;
}
void mostrarDatos()
{
System.out.println(nombre: +nombre);
System.out.println(edad: +edad);
}
}

En el siguiente programa se hace uso de la clase Persona, en el cual se muestra que a


una variable privada no se puede acceder directamente, al tratar de acceder
directamente a ella producira un error y la nica forma de acceder a ella es mediante
una funcin de la clase.

class encapsulacion
{
public static void main(String args[])
{
Persona p1=new Persona();

Se crea el objeto p1 de tipo


de clase Persona

p1.nombre="luis sanchez";

Se trata de acceder directamente a la variable


nombre, pero esto producir un ERROR ya que
la variable nombre es variable privada (private)
Aqu si se puede acceder sin ningn
problema ya que la variable edad es publica

p1.edad=18;
p1.setNombre(luis sanchez);

La forma de poder acceder o manipular una


variable privada es mediante las funciones de
la misma clase.

p1.mostrarDatos();
}
}
Ejercicios.
Programa que visualiza el promedio de 3 nmeros (con enfoque orientado a objetos).
class Promedio {
private int a,b,c;
void setDatos(int x,int y,int z)
{
a=x;
b=y;
c=z;
}
float getPromedio()
{
float x=(float)(a+b+c)/3;
return x;
}
}
class prueba {
public static void main(String args[])
{
Promedio p=new Promedio();
p.setDatos(3,4,6);
System.out.print(p.getPromedio());
}
}

Realice la siguiente clase:


Alumno
Nombre
edad
?

Posteriormente realice una clase de prueba donde realice las


siguientes acciones:
-

Crear un Alumno a1 e inserte los datos de a1


visualice todos los datos de a1.
Modifique la edad de a1.
Visualice la edad de a1.

class Alumno {
private String Nombre;
private int edad;
void setNombre(String n)
{
Nombre=n;
}
void setEdad(int e)
{
edad=e;
}
String getNombre()
{
return Nombre;
}
int getEdad()
{
return edad;
}
}
class prueba {
public static void main(String[] args) {
Alumno a1=new Alumno();
a1.setNombre("Juan Perez");
a1.setEdad(22);
System.out.println("los datos de a1 son:");
System.out.println("Nombre: "+a1.getNombre());
System.out.println("Edad: "+a1.getEdad());
System.out.println("modificando la edad");
a1.setEdad(20);
System.out.println("Edad: "+a1.getEdad());
}
}

S-ar putea să vă placă și