La encapsulación se define como el empaquetado de datos en una sola unidad. Es el mecanismo que une el código y los datos que manipula. De otra manera, el encapsulamiento es un escudo protector que evita que el código acceda a los datos fuera de este escudo.
- Técnicamente, en encapsulación, las variables o datos de una clase están ocultos de cualquier otra clase y solo se puede acceder a ellos a través de cualquier función miembro de la propia clase en la que se declaran.
- La encapsulación se puede lograr declarando todas las variables de la clase como privadas y escribiendo métodos públicos en la clase para establecer y obtener los valores de las variables.
Ejemplo:
# Ruby program to illustrate encapsulation #!/usr/bin/ruby class Demoencapsulation def initialize(id, name, addr) # Instance Variables @cust_id = id @cust_name = name @cust_addr = addr end # displaying result def display_details() puts "Customer id: #@cust_id" puts "Customer name: #@cust_name" puts "Customer address: #@cust_addr" end end # Create Objects cust1 = Demoencapsulation .new("1", "Mike", "Wisdom Apartments, Ludhiya") cust2 = Demoencapsulation .new("2", "Jackey", "New Empire road, Khandala") # Call Methods cust1.display_details() cust2.display_details()
Producción:
Customer id: 1 Customer name: Mike Customer address: Wisdom Apartments, Ludhiya Customer id: 2 Customer name: Jackey Customer address: New Empire road, Khandala
Explicación: En el programa anterior, la clase Demoencapsulation encapsula los métodos de la clase. Solo puede acceder a estos métodos con la ayuda de objetos de la clase Demoencapsulation , es decir, cust1 y cust2 .
Ventajas de la encapsulación:
- Ocultación de datos: el usuario no tendrá idea de la implementación interna de la clase. No será visible para el usuario cómo la clase almacena valores en las variables. Solo sabe que estamos pasando los valores a un método setter y que las variables se inicializan con ese valor.
- Reutilización: la encapsulación también mejora la reutilización y es fácil de cambiar con nuevos requisitos.
- Probar el código es fácil: el código encapsulado es fácil de probar para las pruebas unitarias.
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA