La mayoría de los lenguajes de programación modernos admiten la programación orientada a objetos. Un objeto contiene datos o atributos. Un objeto tiene ciertos comportamientos. Son conocidos como métodos. Un programa puede ser modelado utilizando objetos. Un software es una colección de programas. Por lo tanto, un software puede ser diseñado e implementado utilizando objetos. Los objetos se interactúan utilizando métodos. La programación orientada a objetos mejora la modularidad y reutilización del código. Debe haber una clase para crear objetos. Una clase es un plano para crear un objeto. Por lo tanto, un objeto es una instancia de una clase. En programación, los datos debían ser almacenados. Los datos se almacenan en ubicaciones de memoria. Estas ubicaciones de memoria se denominan variables. Una variable miembro es una variable que está asociada con un objeto específico. Es accesible para todos sus métodos. Hay dos tipos de variables miembro que son variables de clase y variables de instancia. los diferencia clave entre clases y variables de instancia es que, Si solo hay una copia de la variable compartida con todas las instancias de la clase, esas variables se denominan variables de clase y si cada instancia de la clase tiene su propia copia de la variable, esas variables se denominan variables de instancia.
1. Resumen y diferencia clave
2. ¿Qué son las variables de clase?
3. ¿Qué son las variables de instancia?
4. Similitudes entre la clase y las variables de instancia
5. Comparación lado a lado - Variables de clase vs instancia en forma tabular
6. Resumen
Cuando solo hay una copia de la variable compartida con todas las instancias de la clase, esas variables se llaman como variables de clase. Las variables de clase son variables declaradas dentro de la clase fuera de cualquier método. Estas variables contienen la palabra clave static. Estas variables están asociadas con la clase, no con el objeto.
Figura 01: Variables de clase y variables de instancia
Consulte la siguiente pieza de código con variables de clase.
Empleado público de clase
ID de int estática pública;
doble salario público estático;
Prueba de clase pública
public static void main (string [] args)
Empleado e1 = nuevo Empleado ();
Empleado e2 = nuevo Empleado ();
De acuerdo con el programa anterior, e1 y e2 son objetos de tipo Empleado. Ambos tendrán la misma copia de memoria. Si e1.id = 1 e imprimiendo e2.id también dará el valor 1. Es posible imprimir los valores de id y salario utilizando el nombre de la clase Employee como Employee.id, Employee.salary, etc..
Cuando cada instancia de la clase tiene su propia copia de la variable, esas variables se conocen como variables de instancia. Consulte el siguiente programa.
Empleado público de clase
ID de int público;
doble salario publico;
Prueba de clase pública
public static void main (string [] args)
Empleado e1 = nuevo Empleado ();
e1.id = 1;
e1.salary = 20000;
Empleado e2 = nuevo Empleado ();
e2.id = 2;
e2. salario = 25000;
En el programa principal, e1 y e2 son referencias a los objetos de tipo Empleado. Es posible asignar valores para id y salario utilizando el operador de punto como e1.id, e1. salario, etc. La identificación y el salario en la clase Empleado se conocen como variables de instancia. El e1 y el e2 son objetos separados. Cada objeto tendrá una copia separada de las variables de instancia. El e1 tendrá una identificación y un sueldo separados y e2 tendrá una identificación y un sueldo separados. Por lo tanto, las variables de instancia se crean cuando se crea el objeto o la instancia.
Variables de clase vs variables de instancia | |
Las variables de clase son variables en las que solo hay una copia de la variable compartida con todas las instancias de la clase. | Las variables de instancia son variables cuando cada instancia de la clase tiene su propia copia de la variable. |
Asociación | |
Las variables de clase están asociadas con la clase.. | Las variables de instancia están asociadas a objetos.. |
Número de copias | |
Las variables de clase crean una copia para todos los objetos. | Las variables de instancia crean una copia separada para cada objeto.. |
Palabras clave | |
Las variables de clase deben tener la palabra clave estática. | Las variables de instancia no requieren una palabra clave especial como estática. |
La programación orientada a objetos es el principal paradigma de la programación. Ayuda a modelar un software utilizando objetos. Los objetos se crean utilizando clases. La creación de objetos también se conoce como creación de instancias. Una clase proporciona un plano para crear un objeto. Una variable miembro es una variable que está asociada con un objeto específico. Es accesible para todos sus métodos. Hay dos tipos de variables miembro como variables de clase y variables de instancia. La diferencia entre las variables de clase y de instancia es que, si solo hay una copia de la variable compartida con todas las instancias de la clase, esas variables se denominan variables de clase y si cada instancia de la clase tiene su propia copia de la variable, entonces esas las variables se llaman variables de instancia.
Puede descargar la versión en PDF de este artículo y utilizarla para fines fuera de línea según la nota de cita. Descargue la versión en PDF aquí: Diferencia entre clases y variables de instancia
1.tutorialspoint.com. "Objetos y clases de Java". El punto. Disponible aquí
2. “Variable de instancia”. Wikipedia, Wikimedia Foundation, 16 de diciembre de 2017. Disponible aquí
3. “Variable de clase”. Wikipedia, Wikimedia Foundation, 16 de diciembre de 2017. Disponible aquí