logo

Creación de instancias en Java

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

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:

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.