Creación de instancias es una palabra inmensa para definir un concepto universal y sencillo en la programación Java, creando nuevas instancias de objetos para ser utilizado en un programa. En esta sección, discutiremos ¿Qué es la creación de instancias en Java? ¿Cómo crear instancias de una clase? y ¿Cuáles son las formas de crear instancias u objetos de la clase?
Creación de instancias
En Java , creación de instancias significa llamar al constructor de una clase que crea una instancia o objeto del tipo de esa clase. En otras palabras, crear un objeto de la clase se llama creación de instancias . Ocupa la memoria inicial del objeto y devuelve una referencia. Una creación de instancias de objetos en Java proporciona el modelo para la clase.
¿Qué es un objeto?
- Es una entidad de tiempo de ejecución.
- Contiene el plano de la clase.
- Podemos crear cualquier número de objetos de una clase.
- Puede representar datos definidos por el usuario como Vector , Listas, etc.
Sintaxis para la creación de instancias
ClassName objName = new ClassName();
O
ClassName cn; cn= new ClassName;
Entendamos las declaraciones anteriores a través de un ejemplo.
Creando instancias
Hay dos formas de crear instancias:
- Utilizando el nuevo Palabra clave
- Usando Método de fábrica estática
Usando la nueva palabra clave
Java proporciona la nuevo palabra clave para crear una instancia de una clase.
Definición de una referencia
//defines a reference (variable) that can hold an object of the DemoClass DemoClass dc;
Creación de instancias
infierno de devolución de llamada en javascript
DemoClass dc = new DemoClass(); //instantiation
También podemos crear una instancia de la clase anterior de la siguiente manera si definimos una variable de referencia.
//creates a DemoClass object (instantiate) //new keyword allocates memory space for the newly created object dc = new DemoClass();
Observamos que cuando utilizamos el nuevo palabra clave seguida del nombre de la clase, crea una instancia u objeto de esa clase. Creando un constructor de la clase también se conoce como creación de instancias .
C#
Nota: Si queremos invocar los métodos de la clase interna local, debemos crear una instancia de esa clase.
Usando el método de fábrica estática
Otra forma de crear una instancia de una clase es llamando a un estático método de fábrica . Una clase puede proporcionar un método de fábrica estático público que no es más que un método estático que devuelve un instancia de la clase. Recuerda siempre que no es lo mismo que el patrón de método de fábrica .
Podemos usarlo en lugar del constructor. Proporcionar un método de fábrica estático en lugar de un constructor tiene ventajas y desventajas. El primero La ventaja es que los métodos de fábrica estáticos también tienen nombres, a diferencia de los constructores. El segundo La ventaja es que, a diferencia de los constructores, no necesitan crear un nuevo objeto cada vez que se invocan. El tercero La ventaja es que, a diferencia de los constructores, pueden devolver un objeto de cualquier subtipo de su tipo de retorno. El cuatro La ventaja es que reducen la complejidad de la creación de instancias de tipos parametrizados.
La desventaja es que al proporcionar solo métodos de fábrica estáticos, las clases sin constructores públicos o protegidos no se pueden subclasificar. Otra desventaja es que no se distinguen fácilmente de otros métodos estáticos.
Veamos un ejemplo del método de fábrica estático.
public final class Furniture { //.. private int price; private String description; private Furniture (int price, String description) { this.price = price; this.description = description; } public static Furniture getNewFurniture (int price, String description) { return new Furniture (price, description); } //.. }
Veamos algunas preguntas importantes que pueden hacer clic en la mente.
¿Podemos crear una instancia de una clase abstracta?
No, no podemos crear instancias. clases abstractas . Pero se pueden subclasificar. Cuando una clase abstracta se subclasifica, generalmente proporciona implementaciones para todas las clases abstractas. métodos en su clase padre.
¿Cuál es la diferencia entre creación de instancias e inicialización?
La creación de instancias y la inicialización son conceptos completamente diferentes en la programación Java.
Inicialización: Asignar un valor a una variable se llama inicialización . Por ejemplo, costo = 100 . Establece el valor inicial del costo variable en 100.
Creación de instancias: Crear un objeto usando la nueva palabra clave se llama creación de instancias. Por ejemplo, Coche ca = coche nuevo(). Crea una instancia de la clase Car.