1 minuto(s) de lectura

Concepto

  • Palabra Clave new

    • Invoca al constructor de la clase el cual define como estará compuesto el objeto de la propia clase a la que se esta invocando

    • Dentro del objeto tendrá definido los atributos y los métodos de la propia clase

Como Funciona

  • La palabra clave new instancia una variable del tipo de clase asignándole dinámicamente (en tiempo de ejecución/runtime) un espacio en la memoria

  • Crear un nuevo objeto y devuelve la referencia de ese espacio de memoria en el que se encuentra el nuevo objeto a la variable de tipo de clase que se creo anteriormente

// El operador 'new' devuelve una referencia de la posición de memoria del objeto que se creó y almaceno

// • Esta referencia al objeto apunta 
// al constructor que tiene almacenado todos 
// los atributos y método de la clase que los definió
//      ← ← ← 
//     ↓      ↑              // Constructor de la Clase
//     ↓      ↑                       ↓
TipoDeDato variableObjeto = new TipoDeDato();
                               
//                Operador 'new' asigna un espacio 
//                en la memoria de forma dinámica
//                para el objecto instanciado    

Crear una instancia de una clase es el mismo símil que Crear un objeto

Cuando crea un objeto , esta creando una instancia de una clase lo que significa que se esta instanciando una clase

  • Operador new requiere un solo argumento el cual es la llamada al constructor de la clase que estemos invocando

    • El nombre del constructor proporciona el nombre de la clase que queremos instanciar
  • El operador new devuelve la referencia al objeto que lo creo

    • Esta referencia generalmente se asigna a una variable del tipo diseñado la cual sera almacenada

Conceptos básicos

  • new siempre asigna un objeto nuevo a la parte HEAP de la memoria de la maquina virtual de Java

    • Los valores primitivos se almacena en la parte STACK de la memoria de la maquina virtual de Java
  • Las variables primitivas nunca usan el operador new para declararse

    • Si para almacenar referencias a clases del tipo Wrapper como son Integer , Byte , Short , Integer, Long , Boolean , Float, Double , Character

    • Se pueden usar tipos primitivos para almacenar objetos instanciados mediante el operador new utilizando las clases Wrappers

// Ejemplo de Sintaxis
// Como una variable del tipo entero almacena un objeto entero de la clase Wrapper Integer
int valor = new Integer();

Deja un comentario