Date hoy = new Date();
Esta primera línea del método main() declara, instancia
e inicializa un objeto de tipo Date, hoy
. Date
hoy
indica al compilador que la palabra hoy
será
utilizada en adelante para referirse a un objeto cuyo tipo es
Date, el operador new instancia un nuevo objeto Date y
Date() inicializa el objeto. El constructor utilizado para
inicializar al objeto hoy
es el constructor por defecto
que inicializa a los objetos de tipo Date, que los carga con la
fecha y hora actual del sistema.
Las declaraciones pueden aparecer como parte de la creación del objeto como en este caso, o pueden también aparecer solas:
Date hoy;
De cualquier modo, la declaración de un objeto siempre será de la forma:
tipo nombre
Donde tipo puede ser un tipo de dato simple como int, float o boolean, o un tipo de datos más complejo como en este caso la clase Date. nombre es la palabra que se utilizará para reconocer la variable. Las declaraciones simplemente informan al compilador de que se usará la palabra nombre para referirse a una variable del tipo tipo. Las declaraciones no realizan la instanciación del objeto, para instanciar un objeto de tipo Date, o cualquier otro objeto, es necesario utilizar el operador new.
El operador new instancia un nuevo objeto reservando memoria para él. Requiere un solo argumento: el método constructor para el objeto que se creará. Es este método constructor el responsable de la inicialización del nuevo objeto.
Las clases deben proporcionar métodos para inicializar nuevos objetos de ese tipo. En una declaración de clase, los constructores se pueden distinguir del resto de métodos porque tienen el mismo nombre de la clase y no devuelven ningún valor. Por ejemplo, el método constructor de objetos Date que usamos en FechaApp es:
Date()
que no tiene ningún argumento, por lo cual recibe el nombre de contructor por defecto. Al igual que Date, la mayoría de las clases tienen al menos un constructor, el constructor por defecto; sin embargo, las clases pueden tener múltiples constructores, todos ellos con el mismo nombre de la clase y distinto número y tipo de argumentos. Por ejemplo, la clase Date soporta un constructor que necesita tres parámetros de entrada:
Date( int año,int mes,int dia )
que inicializa el nuevo objeto Date con el año, mes y día
que se especifican en esos tres parámetros.
|
[Anterior] [Indice] [Siguiente] |