DEV Community

GoyesDev
GoyesDev

Posted on

Diferencia entre clase y objeto

Una clase es una plantilla que define una serie de métodos que, juntos, abstraen un concepto. Generalmente, dicho concepto tiene asociado un estado, representado por una serie de atributos. La abstracción de la clase, aunque a veces representa algo del mundo real, en ocasiones puede ser una clase de apoyo, para quitarle responsabilidades a otra, según el patrón GRASP de fabricación pura.

El objeto, por otra parte, es una versión "tangible" de la clase en memoria: se reserva un espacio en el heap para almacenar, de forma consecutiva, todas las variables del objeto. Una vez creado el objeto en el heap, se requiere mantener una variable con una referencia a la posición de memoria del objeto en el heap (a esto se le conoce como puntero).

Un puntero de un tipo X, apunta a las variables (estado) del objeto x1, y responde a los métodos definidos en la clase X.

Top comments (0)