No hay forma de evitar la creación de objetos en Java. La creación de objetos en Java, debido a sus estrategias de asignación de memoria, es más rápida que C++ en la mayoría de los casos y, a todos los efectos prácticos, en comparación con todo lo demás en la JVM, se puede considerar "gratuita".
¿Cuáles son las formas de evitar la creación de objetos en Java?
En java podemos evitar la creación de objetos de 2 formas:
- Haciendo que la clase sea abstracta, para que podamos evitar la creación innecesaria de objetos en la misma clase y en otra clase.
- Haciendo que el constructor sea privado (patrón de diseño Singleton), para que podamos evitar la creación de objetos en otra clase pero podemos crear objetos en la clase principal.
¿Es costosa la creación de objetos en Java?
Cada creación de objetos es aproximadamente tan costosa como un malloc en C, o uno nuevo en C++, y no existe una manera fácil de crear muchos objetos juntos, por lo que no puede aprovechar de eficiencias que obtiene utilizando la asignación masiva.
¿Por qué necesitamos crear un objeto en Java?
Los objetos son necesarios en OOPs porque se pueden crear para llamar a una función no estática que no está presente dentro del método principal pero está presente dentro de la clase y también proporciona el nombre al espacioque se utiliza para almacenar los datos.
¿Podemos crear objetos sin new en Java?
Puedes crear un objeto sin nuevo a través de: Reflection/newInstance, clonar y(des) serialización.