fbpx
Seleccionar página

Las clases en java son una parte fundamental en la programación orientada a objetos (POO).
Ya que los objetos son los instrumentos a través de los cuales vamos a poder crear instancias de clases java y ejecutar la lógica programada dentro de ellas.

En este manual de java vamos a aprender a declarar objetos a partir de las clases de java.
También implementaremos la encapsulación, vamos a crear métodos y sus diferentes variantes como los métodos setter y getter, métodos constructores dentro de las clases en java.

Trabajaremos la sobrecarga de métodos, usaremos la palabra clave this.
Aprenderemos a usar el control de acceso de las clases en java y también trabajaremos con los miembros de clase.

Declaración de clases en Java

Para declarar una clase se usa la siguiente sintaxis:

tipo_acceso class MyClass {
    // campos o variables, 
    // constructores
    // metodos
}

El tipo de acceso de una clase puede ser público o privado (public / private), si es una clase publica, otras clases pueden crear instancias de ella.

Si es privada ese acceso está restringido y solo ella puede hacer uso de sus atributos y métodos.
El nombre de la clase tiene que comenzar en mayúscula como lo vimos en las convenciones de nombrado y el cuerpo de la clase tiene que estar encerrado entre llaves “{}”.

[wpsm_ads1]

Código Java de una clase sencilla

package cursojava;

public class Persona {
    
    private String nombre;
    private int edad;
    private char sexo;
    
    public Persona(){
    }
    
    public Persona(String nombre, int edad, char sexo){
        this.nombre = nombre;
        this.edad = edad;
        this.sexo = sexo;
    }
    
    public void printMessage(){
        System.out.println("Soy una persona.");
    }
    
    public String getNombre() {
        return nombre;
    }
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    public int getEdad() {
        return edad;
    }
    public void setEdad(int edad) {
        this.edad = edad;
    }
    public char getSexo() {
        return sexo;
    }
    public void setSexo(char sexo) {
        this.sexo = sexo;
    }
}

En el ejemplo vemos que se están declarando tres campos, que a fin de cuentas son variables. Hay tres tipos de variables:

  1. Cuando son miembros de una clase se les llama campos.
  2. Cuando están en un método o un bloque de código se les llama variables.
  3. Cuando están en la declaración de un método se les llama parámetros.

Los campos de una clase se componen de tres partes: Modificados de acceso (public / private), tipo y nombre.

Sintaxis:

modificador_acceso tipo nombre;

Encapsulación en las clases Java

La encapsulación en java consiste en hacer privados a todos los campos de la clase, con esto aseguramos que solo sean accesados de forma directa únicamente por la clase que los declara.

Después se crean métodos públicos a través de los cuales se pueda acceder a los valores de los campos y también a establecer valores.
Esto obliga a los programas que implementen nuestra clase a acceder únicamente por los métodos que les hemos expuesto.

[wpsm_ads2]

Campos privados

private String nombre;
private int edad;
private char sexo;

Métodos públicos

public String getNombre() {
   return nombre;
}
public void setNombre(String nombre) {
   this.nombre = nombre;
}

Métodos en las clases de Java

Los métodos en Java son un conjunto de instrucciones que se escriben una sola vez y se pueden llamar varias veces, a los métodos se les puede pasar parámetros y también pueden regresar un valor al programa que lo llama.

El cuerpo de un método va encerrado entre llaves {}. Los componentes principales de un método son:

  1. Modificadores de acceso (public /private).
  2. Tipo de retorno, int, String, etc. Y void si no regresa valor.
  3. Nombre del método. Ver reglas de nombrado en el capítulo 1.
  4. Lista de parámetros entre paréntesis.
  5. Lista de excepciones.
  6. Cuerpo del método.

[wpsm_ads1]

public String returnDatosPersona(String nombre, int edad, char sexo){
   String cadena = "";
        
   cadena = "Nombre = " + nombre;
   cadena += ", Edad = " + edad;
   cadena += ", Sexo = " + sexo;
        
   return cadena;
}

Llamando a un método

public void printDatos(){
   String datos = this.returnDatosPersona("ANTONIO", 19, 'M');
   System.out.println("Datos de la persona: " + datos);
}

Métodos set(), get(), is()

Los métodos set, get e is son parte de la encapsulación y estos se utilizan para accesar a los miembros de una clase.

Estos métodos son métodos comunes, solo que se identifican por empezar con el nombrado set, get e is.

Los métodos set: Se utilizan para pasar un valor a un atributo de una clase.
Los métodos get: Se utilizan para recuperar el valor que contiene un atributo de una clase.
Los métodos is: Se utiliza para recuperar el valor de un atributo de tipo booleano, es decir un atributo que guardara un valor de (verdadero / falso).
Los métodos set no regresan ningún valor, por lo tanto, en valor de retorno siempre tendrán “void”.
Los métodos get siempre regresan un valor, por lo tanto, en valor de retorno siempre tendrán un tipo de datos diferente de “void”.
Los métodos is como siempre regresarán un valor verdadero o falso siempre tendrán en su valor de retorno “boolean”.

Sintaxis de los métodos

Método set

public void setNombreMetodo(tipo_dato parametro){
   nombreAtributo = parámetro;
}

Método get

public tipo_retorno getNombreMetodo(){
   return this.nombreAtributo;
}

Método is

public boolean isNombreMetodo(){
   return this.nombreAtributo;
}

[wpsm_ads1]

Ejemplos de los tres métodos 

public String getNombre() {
   return nombre;
}
public void setNombre(String nombre) {
    this.nombre = nombre;
}
public boolean isHombre(){
    return this.hombre;
}

Sobrecarga de métodos en Java

Java soporta la sobrecarga de métodos y se da cuando dos o más métodos se llaman igual, pero tienen diferente firma.

Es decir, los parámetros son diferentes. Puede haber tantos métodos sobre cargados como se requiera.

//Primer metodo sobrecargado
public String returnDatosPersona(String nombre, int edad, char sexo){
   String cadena = "";
        
   cadena = "Nombre = " + nombre;
   cadena += ", Edad = " + edad;
   cadena += ", Sexo = " + sexo;
        
   return cadena;
}
    
//Segundo metodo sobrecargado
public String returnDatosPersona(String nombre){
   String cadena = "";
        
   cadena = "Nombre = " + nombre;
   return cadena;
}

Método constructor en Java

Los métodos constructores son muy importantes dentro de las clases de java, ya que son los métodos que se utilizan para crear los objetos de las clases.

Todas las clases en java tienen cuando menos un método constructor, aunque no sea declarado, este método es conocido como constructor por defecto.

Los métodos constructores son identificados por llamarse igual que la clase, también los métodos constructores pueden ser sobrecargados para poder crear instancias de objetos de diferentes formas.

Características de los métodos constructores:

  1. Se llaman igual que la clase.
  2. Pueden ser sobrecargados.
  3. Se usan para crear objetos de las clases e inicializa sus atributos.
  4. Toda clase contiene uno por lo menos.
  5. No regresan ningún valor

[wpsm_ads2]

//Metodo constructor por defecto (default)
public Persona(){
}

//Metodo contructor parametrizado
public Persona(String nombre, int edad, char sexo){
   this.nombre = nombre;
   this.edad = edad;
   this.sexo = sexo;
}

Creando un objeto en java

Para crear objetos de clases en  java, se utiliza alguno de los métodos constructores con los que cuente la clase.
Si no se cuenta con alguno personalizado, java utiliza el método constructor por defecto, aun si dicho método no se encuentra codificado en la clase.

Sintaxis básica para crear objetos

Nombre_clase nombre_objeto = new Nombre_clase(parámetros);
package cursojava;

public class ObjetosMain {

    public static void main(String[] args) {

        Persona hugo = new Persona();
        Persona pedro = new Persona("Pedro", 18, 'M');
    }
}

Palabra clave this en Java

La palabra clave “this” hace referencia al objeto actual y actúa sobre un método o un constructor de clase. Esta palabra se usa para llamar algún atributo o método de la clase.

Es muy común usar esta palabra en los métodos constructores, ya que cuando se pasan parámetros, estos se suelen llamar igual que los atributos de la clase.
Cuando se hace la asignación de parámetros hacia los atributos de la clase se suele usar “this” con los atributos para diferenciarlos de los parámetros.

package cursojava;

public class Persona {
    
    private String nombre;
    private int edad;
    private char sexo;
    private boolean hombre;
    
    public Persona(){
    }
    
    public Persona(String nombre, int edad, char sexo){
        //Uso de la palabra clave THIS en una clase JAVA
        this.nombre = nombre;
        this.edad = edad;
        this.sexo = sexo;
    }

Control de acceso en Java

Los modificadores de acceso determinan si otras clases pueden hacer uso de atributos o ejecutar métodos de otra clase.

Modificador Clase Paquete Subclase Todos
public SI SI SI SI
protected SI SI SI NO
Sin modificador SI SI NO NO
private SI NO NO NO

[wpsm_ads1]

public: Permite acceder a los componentes desde cualquier lugar.
private: Solo permite el acceso a los componentes desde la misma clase.
protected: Permite el acceso a la clase, subclase y clases dentro del mismo paquete solamente.
Sin modificador (por defecto): Si se especifica un modificador de acceso se establece el modificador por defecto.

El cual establece que solo se podrá tener acceso a los elementos de una clase cuando sea desde la misma clase o desde otra clase siempre y cuando se encuentre en el mismo paquete de la clase.

Miembros de clase en Java

Los miembros de clase se identifican por usar la palabra “static” en su declaración en las clases de java.

Pueden ser tanto atributos como métodos de una clase.
Para hacer uso de ellos no es necesario crear alguna instancia de una clase.
Se pueden usar con el nombre de la clase, un punto y enseguida el atributo o método de clase que fue definido con la palabra “static en su declaración”.

Sintaxis de una variable de clase

modif_acceso static tipo_dato nombre_variable;

Sintaxis de un método de clase

modif_acceso static tipo_dato nombre_metodo(parametros) {
  cuerpo_metodo;
}

[wpsm_ads2]

Ejemplo de uso de los miembros de clase y atributos de clase en java

package cursojava;

public class AtributosClase {
    
    private static int numeroPiezas = 0;
    
    public static int getNumeroPiezas(){
        return numeroPiezas;
    }

Acceder a los atributos  de clase

Sintaxis de atributo

Clase.nombre_atributo;

Acceder a los métodos de clase

Sintaxis de método

Clase.nombre_metodo(parametros);

Ejemplo completo

package cursojava;

public class AtributosClase {
    
    //Atributo de clase
    private static int numeroPiezas = 0;
    
    //Metodo de clase
    public static int getNumeroPiezas(){
        return numeroPiezas;
    }
    
    //Metodo main en java
    public static void main(String[] args) {
        
        //Obtener el atributo y el metodo de clase
        int nuPiezasAtributo = AtributosClase.numeroPiezas;
        int nuPiezasMetodo = AtributosClase.getNumeroPiezas();
        
        //Imprime resultados
        System.out.println("nuPiezasAtributo = " + nuPiezasAtributo);
        System.out.println("nuPiezasMetodo = " + nuPiezasMetodo);
    } 
}

Resultado de la ejecución

nuPiezasAtributo = 0
nuPiezasMetodo = 0

Espero y este tutorial sobre las clases en java te sea de utilidad.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies