CodeGym /Blog Java /Random-ES /Accesores y mutadores en Java
Autor
Pavlo Plynko
Java Developer at CodeGym

Accesores y mutadores en Java

Publicado en el grupo Random-ES
Antes de profundizar en este concepto, debe conocer las clases y la encapsulación en Java .

Encapsulación en Java

La encapsulación, como sugiere su nombre, es el proceso de encerrar datos y métodos como una sola unidad. En la programación orientada a objetos , los miembros de datos de una clase se hacen privados para restringir el acceso directo a ellos. Por lo tanto, los miembros de datos encapsulados no se pueden recuperar ni modificar sin una forma definida correctamente. Para esto, definimos métodos de acceso y mutación en Java. Echemos un vistazo a estos métodos en detalle.

¿Qué son los accesores y mutadores en Java?

Accesorios

El nombre del método de acceso está dirigido por la palabra " acceso " que permite al usuario acceder a la información privada en una clase. Si alguna vez has oído hablar del método " get " o " getters ", es lo mismo que los accesores. Los captadores recuperan las variables y constantes privadas para acceder fuera del alcance de una clase.

Sintaxis

Usamos la palabra clave " get " para accesores de Java. Para acceder a la variable " nombre " podemos usar el siguiente getter getName() . Para el ejemplo del método de acceso, eche un vistazo a lo siguiente.

public class Student {

	private String name;
	
	public String getName() {
		return name;
	}
}
Tenga en cuenta que cada getter tiene la palabra clave " get " antes del nombre de la variable en la firma del método y el tipo de devolución es el mismo que el de la variable que se devolverá. Dado que la variable " nombre " es de tipo " Cadena ", el método getter/accessor también devuelve una " Cadena ".

mutadores

El método mutador en Java está impulsado por la palabra "mutar", que literalmente significa modificar. Los mutadores permiten a los usuarios establecer/mutar el valor de las variables privadas de un objeto de clase. En el contexto de la programación orientada a objetos, el método “ set ” o “ setters ” también se conocen como mutadores. Los setters facilitan la encapsulación ya que los miembros de datos privados no se pueden modificar directamente. Por lo tanto, los métodos/mutadores setter se utilizan para actualizar el valor de una variable fuera del alcance de la clase.

Sintaxis

Para mutators, usamos la palabra clave " set ". Cada setter se define con la palabra clave "set" seguida del nombre de la variable que debe mutarse. Aquí, usamos el setter setName() que toma una variable de tipo String como parámetro.

public class Student {

	private String name;

	public void setName(String name) {
		this.name = name;
	}
}

¿Por qué necesitamos accesores y mutadores?

Necesitamos getters y setters o accessors y mutators para proteger la información confidencial en una clase. La información está protegida contra el uso ilegal mediante el uso de estos métodos estándar. Además, el conjunto de datos en un mutador también se puede validar si cumple con todos los requisitos de un programa.

Ejemplos de accesores y mutadores

Al usar la clase de estudiante a continuación, veamos los ejemplos de los métodos de acceso y mutación.

Ejemplo


import java.util.Arrays;

public class Student {

	private String name;
	private Integer ID;
	private String DOB;
	private double GPA;
	private String[] courses;

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Integer getID() {
		return ID;
	}

	public void setID(Integer iD) {
		this.ID = iD;
	}

	public String getDOB() {
		return DOB;
	}

	public void setDOB(String dOB) {
		this.DOB = dOB;
	}

	public double getGPA() {
		return GPA;
	}

	public void setGPA(double gPA) {
		this.GPA = gPA;
	}

	public String[] getCourses() {
		return courses;
	}

	public void setCourses(String[] courses) {
		this.courses = courses;
	}

	public static void main(String[] args) {

		Student student1 = new Student();

		System.out.println("Student Bio [ Before using Accessors & Mutators ]");

		// calling accessor methods
		System.out.print("Name: " + student1.getName());
		System.out.print("\tID: " + student1.getID());
		System.out.print("\tGPA: " + student1.getGPA());
		System.out.print("\tDOB: " + student1.getDOB());
		System.out.println("\tCourses: " +  Arrays.toString(student1.getCourses()));

		// calling mutator methods
		student1.setName("Alex Coy");
		student1.setID(3115);
		student1.setGPA(2.79);
		student1.setDOB("08/08/1998");
		String[] courses = { "Object Oriented Programming", "Cryptography", "Photography", "Network Security" };
		student1.setCourses(courses);

		System.out.println("\nStudent Bio [ After using Mutators & Accessors ]");

		// calling accessor methods
		System.out.print("Name: " + student1.getName());
		System.out.print("\tID: " + student1.getID());
		System.out.print("\tGPA: " + student1.getGPA());
		System.out.print("\tDOB: " + student1.getDOB());
		System.out.println("\tCourses: " + Arrays.toString(student1.getCourses()));
	}
}

Producción

Biografía del estudiante [Antes de usar accesorios y mutadores] Nombre: nulo ID: nulo GPA: 0.0 Fecha de nacimiento: nulo Cursos: nulo Biografía del estudiante [Después de usar mutadores y accesorios] Nombre: Alex Coy ID: 3115 GPA: 2.79 Fecha de nacimiento: 08/08/1998 Cursos: [Programación Orientada a Objetos, Criptografía, Fotografía, Seguridad de Redes]

Conclusión

Esta fue una introducción rápida y un ejemplo de accesores y mutadores en Java. Se le recomienda crear sus propios ejemplos de muestra y probar estos métodos por sí mismo. Como siguiente ejercicio, puede encontrar formas de agregar getters y setters automáticamente por el IDE. ¡Infórmate y cuéntanos!
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION