domingo, 3 de marzo de 2019

¿Que es una clase en java?

Las clases son la base de la programación orientada a objetos, una clase es una plantillamolde o modelo para crear objetos.
Una clase está compuesta por características, propiedades o atributos (variables) y por su comportamiento (métodos) que trabajan sobre las propiedades.
Sintaxis  de una clase en Java.
class MiClase{
     //Constructor de la Clase
     //atributos de la clase
    //métodos de la clase
}
Considera una clase como un molde, comparemos con una plantilla para crear una solicitud de permiso, estas plantillas tienen toda la información, lo único que se cambia son ciertos datos.
Y con una sola plantilla yo podría crear varias solicitudes.
De qué sirve esto, esto ayuda a no crear de nuevo una solicitud si no sólo adaptarla a un nombre específico de acuerdo al solicitante.
Así mismo son las clases, a partir de una clase se pueden crear muchos objetos, cada objeto tendrá sus propias características.
Vamos a ver un ejemplo:
Ejemplo: Voy a crear una clase celular, con sus atributos: color, modelo, marca, con dos constructores y los métodos llamar, cortar llamada, informar características y  los métodos getters y setters que permiten acceder a los atributos de la clase.

CREANDO LA CLASE CELULAR

Con esta clase tenemos dos de los cuatro conceptos vistos anteriormente: Abstracción, Encapsulamiento.
Abstracción: Cuando creamos la clase Celular, estamos haciendo abstracción puesto que cuando creemos un objeto de tipo Celular, al usuario le interesa el objeto celular,  no le interesa que es lo que tiene dentro la clase ni como está implementada, si no utilizar los métodos del objeto, llamar y cortar llamada e informar características.
Encapsulamiento: Las palabras reservadas private, public, default, dan cierto grado de visibilidad del contenido de la clase, por ejemplo la palabra reservada private solo permite acceder a ese atributo desde dentro de la misma clase, si intentas acceder desde el objeto creado, por ejemplo celular.marca te lanzará un error.
Si te das cuenta para poder asignar valores acceder y acceder a los atributos de las clase se utiliza los métodos setter y getter (encapsulamiento).
Hasta ahora hemos visto la clase, pero la clase por sí sola no tiene mucho significado, para que una clases tenga utilidad se debe crear un objeto de ese tipo.
A continuación voy a crear un objeto de tipo celular. 
Esta parte ya no es desconocida ya que es igual que declarar una variable como se vió en el tutorial Variables y tipos de Datos en Java, salvo ciertas sentencias adicionales que hay que poner.
Pero antes de nada, primero aclarar que es un objeto en Java.