¿Qué es un constructor?
Constructor - Introducción
El constructor es un método especial que se utiliza principalmente para inicializar el objeto al crear el objeto, es decir, asignar valores iniciales a las variables miembro del objeto
Siempre se usa con el operador new en una declaración para crear un objeto. Una clase particular puede tener múltiples constructores, que se pueden distinguir según la cantidad de parámetros o el tipo de parámetros, es decir, la sobrecarga del. constructor
Constructor: la diferencia entre constructor y otros métodos
1. El nombre del constructor debe ser exactamente el mismo que el nombre de la clase, mientras que el método general no puede ser el mismo; el nombre de la clase.
2 La función del constructor se utiliza principalmente para definir el estado inicializado cuando se crea el objeto de la clase. No tiene valor de retorno y no se puede modificar con void. no solo no devuelve nada automáticamente, sino que tampoco tiene ninguna opción. Otros métodos tienen valores de retorno. Incluso si es un valor de retorno nulo, aunque el cuerpo del método en sí no devolverá nada automáticamente, aún se puede hacer que devuelva algo. , y estas cosas pueden ser inseguras.
3. El constructor no se puede llamar directamente. Debe llamarse automáticamente cuando se crea el objeto a través del nuevo operador.
4. Al definir una clase, en circunstancias normales, se mostrará el constructor de la clase y se puede omitir el trabajo de inicialización especificado en la función, pero el compilador de Java proporcionará un constructor predeterminado. El constructor predeterminado no toma parámetros. El método general no existe. Esta característica
5 Cuando una clase solo define un constructor privado, su objeto no se puede crear mediante la nueva palabra clave. Cuando una clase no define ningún constructor. , el compilador de C# generará automáticamente uno para él. Un constructor sin parámetros predeterminado.
Constructor - Constructor en C++
El formato de definición del constructor de C++ es: constructor
clase
{
p>
public:
(Lista de parámetros)
//...(También puede declarar otras funciones miembro)
}; /p >
::(Lista de parámetros)
{
//Cuerpo de la función
}
La siguiente definición es legal:
clase T
{
público:
T(int a=0){i=a;}// Las funciones de construcción pueden escribirse directamente dentro de la definición de clase y también pueden tener listas de parámetros.
private:int i;
};
Cuando no hay ningún destructor en el programa, el sistema generará automáticamente el siguiente constructor:
::(){}, lo que significa que no se realiza ninguna operación.
Constructor - Ejemplo de C++
//Tenga en cuenta que si copia este código directamente en el compilador, se puede informar un error porque se agregará un marcador de posición chino antes del código cuando se inicie la web. se genera la página. símbolo
//Es mejor escribir el código nuevamente
#include
usando el espacio de nombres
class; hora
{
público:
hora() //constructor.Constructor
{
hora= 0;
p>minuto=0
seg=0;
}
void set_time();
void show_time( );
privado:
int hora;
int minuto
int seg; >
};
int main()
{
hora de clase t1; /p>
t1.set_time();
t1.show_time();
devuelve 0
}
tiempo vacío::set_time()
{
cin >>hora
cin >>minuto
cin >>seg;
}
void time::show_time()
{ cout<}
Estado de ejecución del programa:
0: 0: 0
10 11 11 Enter
10:11:11
Cada vez que se crea una clase o estructura, se llama a su constructor . Una clase o estructura puede tener múltiples constructores que acepten diferentes parámetros. Los constructores permiten a los programadores establecer valores predeterminados, limitar la creación de instancias y escribir código flexible y legible.
Código de muestra JAVA:
la clase pública UserManagerImpl implementa UserManager {
UserDao privado userDao
UserManagerImpl público (UserDao userDao){
this.userDao=userDao;
}
guardado vacío público (nombre de usuario de cadena, contraseña de cadena){
this.userDao.save (nombre de usuario, contraseña);
}
}
Constructor en PHP
Declaración de constructor y declaración de otras operaciones Lo mismo, excepto que su nombre debe tener dos guiones bajos __construct(). Este es un cambio en PHP5; en la versión PHP4, el nombre del constructor debe ser el mismo que el nombre de la clase. Para compatibilidad con versiones anteriores, si una clase no tiene un método llamado __construct(), PHP buscará un método con el mismo nombre que la clase.
Formato: función __construct ([parámetro]) { ... ... }
Ejemplo:
persona de clase{
public $nombre;
public $edad;
función _ _construct(){ // Constructor
$this->name="lisi"; p>
$this->edad=28;
}
función say(){
echo "mi nombre es ".$this - >nombre."
";
echo "mi edad es ".$this->age."
"; }
}
$por=nueva persona();
$por->decir()
$por- > nombre="zhangsan";
$por->edad=26;
$per->say() >
Ejemplo de C#
Los constructores son métodos de clase que se ejecutan cuando se crea un objeto de un tipo determinado. El constructor tiene el mismo nombre que la clase y normalmente inicializa los miembros de datos del nuevo objeto.
En el siguiente ejemplo, una clase llamada Taxi se define utilizando un constructor simple. Luego use el nuevo operador para crear una instancia de la clase. Inmediatamente después de asignar memoria para el nuevo objeto, el nuevo operador llama al constructor Taxi.
Taxi de clase pública{ public bool isInitialized; Taxi público() { isInitialized = true }}class TestTaxi{ static void Main() { Taxi t = new Taxi(); .isInitializado); }}