Podría alguien por favor explicar lo que hace SomeClassname.class
retorno en JAVA ?? No puedo entender lo que hace ..¿Qué devuelve classname.class?
Respuesta
Devuelve lo mismo que Object.getClass() para una instancia determinada, pero puede usarlo cuando sepa estáticamente qué clase desea (es decir, en tiempo de compilación).
Desde el Javadoc:
devuelve la clase en tiempo de ejecución de este objeto.
En pocas palabras, le da un objeto que representa la clase del objeto (el original). Se usa, entre otras cosas, por reflection cuando desee descubrir métodos y campos mediante programación para invocarlos/acceder a ellos.
Por ejemplo:
Method m[] = String.class.getDeclaredMethods();
for (int i = 0; i < m.length; i++)
{
System.out.println(m[i].toString());
}
El Javadoc también se refiere a la (que podría ser un poco pesada la lectura) Java Language Specification - Class Literals.
Devuelve el objeto Class que representa el nombre de la clase especificada. Esto se usa si necesita obtener el objeto Class.
Esto corresponde aproximadamente a .getClass(), que devuelve el objeto de clase que corresponde a la instancia del objeto. Utiliza some className.class cuando quiere trabajar con el objeto Class y no tiene una instancia de objeto.
método Igual que .getClass(), pero se puede utilizar solamente para las clases nombradas y sin efecto. La sintaxis .class permite obtener una clase si el tipo de objeto está disponible, pero no hay ninguna instancia. Además, la forma más fácil de obtener una clase para un tipo primitivo.
.class es un literal de clase ... Al igual que 5 es un literal literal, como 5.0 es un literal doble (sorprendentemente, hay una clase llamada 'Clase' en el paquete java.lang).
lo tanto, puede imprimir la clase literal (al igual que se puede imprimir cualquier objeto ... se obtiene lo que los toString() devuelve la clase en clase). Puedes tener una variable de clase.
PD: hay muchas funciones que se pueden utilizar
- 1. ¿Cuál es la diferencia entre synchronized (this) y synchronized (ClassName.class)?
- 2. ¿Cuál es el equivalente de Scala del ClassName.class de Java?
- 3. ¿Qué devuelve wave.readframes?
- 4. ¿Qué devuelve printf?
- 5. ¿Qué devuelve CGColorGetComponents()?
- 6. ¿Qué devuelve una tarea?
- 7. ¿Qué devuelve setTimeout?
- 8. ¿qué devuelve PHP() return
- 9. qué parseJSON devuelve null
- 10. ¿Qué devuelve request.getParameter?
- 11. ¿Qué devuelve el dojo.query()?
- 12. ArrayAdapter.getPosition (item) Devuelve ¿Qué?
- 13. ¿Qué devuelve malloc (0)?
- 14. ¿Qué devuelve int.class
- 15. ¿Por qué navigator.appCodeName devuelve Mozilla?
- 16. ¿Qué devuelve "count ++" en C#?
- 17. por qué Files.probeContentType devuelve nulo
- 18. $ wpdb - ¿Qué devuelve al fallar?
- 19. En Python, ¿qué devuelve getresponse()?
- 20. ¿Por qué ISNUMERIC ('.') Devuelve 1?
- 21. Android Matrix, ¿qué devuelve getValues ()?
- 22. ¿Por qué document.GetElementById devuelve nulo
- 23. ¿Por qué chrome.extension.getBackgroundPage() devuelve nulo?
- 24. ¿Por qué BitmapFactory.decodeByteArray devuelve nulo?
- 25. ¿Por qué Bitmap.getConfig() devuelve nulo?
- 26. ¿Qué objeto devuelve jquery exactamente?
- 27. ¿Por qué SelectSingleNode devuelve nulo?
- 28. ¿Qué devuelve Xdebug en PHP?
- 29. ¿Por qué sys.getrefcount() devuelve 2?
- 30. ¿Por qué is_array() devuelve falso?
¿Quiere decir esto que devuelve la instancia de clase? – Rajeshwar
@Rajeshwar no: p. 'new Object()' devuelve una nueva instancia de 'Object', pero' Object.class' es una instancia de la clase 'Class
@trutheality podría por favor elaborar .. – Rajeshwar