Ir al contenido principal

Variables miembro, Encapsulación y Métodos Set y Get

Las variables miembro en Java, son aquellas que conservan su valor en toda la clase, a diferencia de las variables de parámetro por ejemplo, que solo son útiles en el cuerpo del método donde se declaran.

Las variables miembro de la clase, pueden tener tres atributos de acceso: public, protected y private; estos atributos determinan que otras clases pueden ver o utilizar estas variables. A esta cualidad de la programación orientada a objetos se le conoce como encapsulación.

  • public: cualquier otra clase que tenga acceso a la clase donde esta declarada, podrá hacer uso de la variable.
  • protected: solamente las clases que pertenezcan al mismo package pueden utilizar las variables.
  • private: solo la clase donde se declaro la variable tiene acceso a la misma.

Gracias a estos atributos es posible controlar el acceso a las variables, pero estos atributos se aplican al leer el valor o al modificarlo, de tal forma que si una variable miembro se declara como private ninguna clase podrá leer o modificar su valor, lo que limita su uso.

public class ClaseA
{

public int varA;

private int varB;
protected int varC;
}

Para darle mayor flexibilidad a estos atributos se crean los métodos get y set, que permiten leer el valor de la variable o modificarlo, pero de forma independiente se puede restringir o no el uso de estos métodos.

  • Los métodos get permiten leer el valor de una variable miembro.
public int getVarA()
{
return (this.varA);
}

  • Los métodos set permiten modificar el valor de una variable miembro.
public void setVarA(int varA)
{
this.varA = varA;
}

A estos método se les puede colocar también los atributos de acceso public, protected y private, con lo cual se puede limitar el acceso ya sea a la lectura o la escritura de los valores de las variables miembro.


public class ClaseA
{
public int varA;
private int varB;


public void setVarA(int varA)
{
this.varA = varA;
}

private void setVarB(int varB)
{
this.varB = varB;
}

public int getVarA()
{
return (this.varA);
}

public int getVarB()
{
return (this.varB);
}//aunque la variable varB es privada al crear el método get con el atributo public, se da acceso de lectura a otras clases.
}

class ClaseB extends ClaseA
{
public static void main(String sax[])
{
ClaseB objeto = new ClaseB();
objeto.varA=5; //modifica el valor de la variable varA directamente sin usar el método setVarA(5)
System.out.println("VarA: "+objeto.varA); //imprime el valor de la variable varA sin usar el método getVarA()

objeto.setVarA(10);//modifica el valor de la variable varA utilizando el método, téngase en cuenta que el método es público.

System.out.println("VarA: "+objeto.getVarA());
System.out.println("VarB: "+objeto.getVarB());

//objeto.setVarB(10); no es posible utilizar este método porque es privado

}
}

Nota: el ejemplo anterior muestra el uso de las variables miembro de una clase que están declaradas dentro de la ClaseA y su uso dentro de otra clase, en este caso las ClaseB que hereda de la ClaseA.

Nota: es posible programar varias clases dentro de un mismo archivo de código, pero en este archivo solo puede haber una clase public, que es la que le dará el nombre al archivo, es el ejemplo anterior seria ClaseA.java.

Comentarios

Entradas más populares de este blog

Creación de Librerías en Java

Creación de Librerías en Java   Las librerías son un conjunto de clases con funciones especificas que ayudan a desarrollar aplicaciones más complejas de una forma sencilla, por ejemplo si se requiere realizar cálculos matemáticos y emplear el funciones como el Seno o Coseno, simplemente se importa la librería Math y se utilizan estos métodos, en lugar de desarrollarlos. Java cuenta con una extensa lista de librerías disponibles dentro del JDK o desarrolladas por terceros, pero también existe la posibilidad de desarrollar librerías propias para reutilizar de forma más eficiente el código, por ejemplo si se trabaja de forma cotidiana con conexión a base de datos, se pueden desarrollar métodos genéricos que realicen la conexión, que validen las consultas, etc. de forma que su uso reduzca el tiempo de desarrollo e incremente la productividad. Para este tutorial se van a crear dos proyectos en NetBeans, uno sera la librería y el otro proyecto hará uso de esta.

Elegir la clase a ejecutar en NetBeans, MVC

Elegir la clase a ejecutar en NetBeans Para que java pueda ejecutar una aplicación esta debe tener un método conocido como punto de entrada, este método tiene la sintaxis: void static void main(String [] sax){ //código } En ocasiones en una aplicación tiene varios puntos de entrada, que pueden servir para probar diferentes partes de la aplicación sin tener que recorrer o pasar por varias clases, para esto se puede seleccionar directamente en las propiedades del proyecto que clase será la principal.

Librerías JOptionPane para generar ventanas de entrada y salida de datos

Para poder introducir datos leídos desde el teclado existen varias formas, una de ellas hace uso de la librería javax.swing.JOptionPane que entre otras opciones permite mostrar ventanas para introducir datos, y ventanas para mostrar valores. Con el uso de esta librería se crean pequeñas interfaces definidas por el sistema, pero ya se hace uso de las librerías graficas swing, que se verán más adelante.