Tracks
/
Java
Java
/
Temario
/
Constructores
Co

Constructores en Java

16 ejercicios

Acerca de Constructores

Para crear una instancia de una clase se llama a su constructor mediante el operador new. Un constructor es un tipo especial de método cuyo objetivo es inicializar una instancia recién creada. Los constructores se parecen a los métodos normales, pero no tienen tipo de retorno y su nombre coincide con el de la clase.

class Library {
    private int books;

    public Library() {
        this.books = 10;
    }
}

// This will call the constructor
var library = new Library();

Al igual que los métodos normales, los constructores pueden tener parámetros. Los parámetros del constructor normalmente se guardan como campos (privados) para acceder a ellos más adelante, o bien se usan en algún cálculo puntual. A los constructores se les pueden pasar argumentos igual que se le pasan argumentos a los métodos normales.

class Building {
    private int numberOfStories;
    private int totalHeight;

    public Building(int numberOfStories, double storyHeight) {
        this.numberOfStories = numberOfStories;
        this.totalHeight = numberOfStories * storyHeight;
    }
}

// Call a constructor with two arguments
var largeBuilding = new Building(55, 6.2)

Especificar un constructor es opcional. Si no se especifica ningún constructor, el compilador genera un constructor sin parámetros:

class Elevator {
}

// This will call the (empty) generated constructor
var elevator = new Elevator();

Si los campos tienen asignado un valor inicial, el compilador generará código en el que la asignación se hace en realidad dentro del constructor. Por lo tanto, las siguientes declaraciones de clase son equivalentes (en cuanto a funcionalidad):

class UsingFieldInitialization {
    private int players = 5;
}

class UsingConstructorInitialization {
    private int players;

    public UsingConstructorInitialization() {
        players = 5;
    }
}
Editar en GitHub El enlace se abre en una ventana o pestaña nueva

Aprende Constructores