Para realizar cualquier operación mientras se asignan valores a un miembro de datos de instancia, se utiliza un bloque inicializador. En términos más simples, el bloque inicializador se usa para declarar/inicializar la parte común de varios constructores de una clase. Se ejecuta cada vez que se crea el objeto.
El bloque inicializador contiene el código que siempre se ejecuta cada vez que se crea una instancia y se ejecuta cada vez que se crea un objeto de la clase. Hay 3 áreas donde podemos usar los bloques inicializadores:
- Constructores
- Métodos
- bloques
Sugerencia: si queremos ejecutar algún código una vez para todos los objetos de una clase, usaremos Static Block en Java
Ejemplo 1:
Java
// Java Program to Illustrate Initializer Block // Class class Car { // Class member variable int speed; // Constructor Car() { // Print statement when constructor is called System.out.println("Speed of Car: " + speed); } // Block { speed = 60; } // Class member method public static void main(String[] args) { Car obj = new Car(); } }
Speed of Car: 60
Ejemplo 2:
Java
// Java Program to Illustrate Initializer Block // Importing required classes import java.io.*; // Main class public class GFG { // Initializer block starts.. { // This code is executed before every constructor. System.out.println( "Common part of constructors invoked !!"); } // Initializer block ends // Constructor 1 // Default constructor public GFG() { // Print statement System.out.println("Default Constructor invoked"); } // Constructor 2 // Parameterized constructor public GFG(int x) { // Print statement System.out.println( "Parameterized constructor invoked"); } // Main driver method public static void main(String arr[]) { // Creating variables of class type GFG obj1, obj2; // Now these variables are // made to object and interpreted by compiler obj1 = new GFG(); obj2 = new GFG(0); } }
Common part of constructors invoked !! Default Constructor invoked Common part of constructors invoked !! Parameterized constructor invoked
Nota: El contenido del bloque inicializador se ejecuta cada vez que se invoca cualquier constructor (antes del contenido del constructor).
El orden de los constructores de inicialización y el bloque inicializador no importa, el bloque inicializador siempre se ejecuta antes que el constructor.
Para obtener más detalles sobre la inicialización de instancias en Java, consulte el artículo Bloque de inicialización de instancias (IIB) en Java
Este artículo es una contribución de Ashutosh Singh . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA