Los chicos heredamos de Object como de cualquier otra clase (excepto, por supuesto, que no tenemos que declararlo explícitamente) o hay algunos privilegios especiales para la clase Object y no se heredan como otras clases?¿Heredamos de Object?
Respuesta
No es lo mismo. Aquí el extracto de JLS 8.1.3:
Si la declaración de clase para cualquier otra clase no tiene cláusula se extiende, entonces la clase tiene la clase
Object
como su superclase directa implícita.
Por supuesto, Object
sí es un poco especial (JLS):
Cada clase excepto
Object
es una extensión de (es decir, una subclase de) una sola clase existente (§ 8.1 .3) y pueden implementar interfaces (§8.1.4).
Y qué pasa si la clase tiene la cláusula extends, porque no especifica eso. –
@Knowing Todas las clases heredan directa o indirectamente de 'Object'. La relación de herencia, por supuesto, no puede formar un ciclo. La clase 'Object' es la única que hereda de nadie, es la parte superior de la jerarquía. http://java.sun.com/j2se/1.3/docs/api/java/lang/Object.html No hay diferencia entre heredar de 'Object' o de otra clase, y excepto los tipos primitivos, todo es un objeto. Incluso las matrices son objetos http://java.sun.com/docs/books/jls/second_edition/html/arrays.doc.html. – ewernli
@ewernli así que si usted dice que no hay diferencia entre heredar de un objeto y heredar de cualquier otra clase, ¿por qué podemos heredar de más de una clase en un ejemplo como este: public class MyClass extends YourClass {}? –
Todo es un objeto en Java. Se pueden invocar todos los métodos de Object (toString()
, wait()
, etc.) en cualquier instancia de cualquier clase de Java.
* "Todo es un objeto en Java." * No es cierto. Los primitivos no son 'Object's. –
@ om-nom-nom Su comentario parece pedante. La pregunta no tiene nada que ver con los primativos. –
Cada clase en Java ES un Objeto. Se comportan como Objetos, se pueden agregar a colecciones de tipo Objeto, pueden usar cualquier método definido en Objeto.
Por lo tanto, SÍ, todo (excepto las primitivas) hereda de Object en Java.
EDITAR: Java adopta el enfoque de "Todo es un objeto". De alguna manera fuerza la programación orientada a objetos.
Ejemplo:
Si la clase A no se extiende otra clase inherentemente extiende objeto.
Si la clase A amplía otra clase B, se extiende también a objeto ya que B debe tener Objeto extendido.
Entonces, ¿cómo es sí o no? Pregunto porque recibo dos respuestas que se contradicen entre sí. –
La respuesta es "heredamos de Object como de cualquier otra clase (excepto por supuesto que no tenemos que declararlo explícitamente)" – CheesePls
- 1. jQuery: - [object Object] Error
- 2. ¿Qué significa [object Object]?
- 3. Calendar.before (Object when), why Object?
- 4. ¿Qué significa [object Object]? (JavaScript)
- 5. Object to Object Mapping Utility
- 6. jQuery.getJSON y jQuery.parseJSON return [object Object]?
- 7. ¿Por qué JavaScript devuelve [Object Object] de valueOf() en lugar de [object]?
- 8. Error de sintaxis no detectada, expresión no reconocida: [object Object]
- 9. jQuery no detectada TypeError: Object [object Object] no tiene control deslizante método
- 10. TypeError no detectada: Object [object Object] no tiene un método validar
- 11. Console.log en IE en un objeto recién publicado [object Object]
- 12. deserializar Mapa <Object, Object> con GSON
- 13. Uncaught TypeError: Object [objeto Object] no tiene ningún método 'apply'
- 14. ¿Qué es Object :: private y Object :: public en Ruby?
- 15. Retorno del bloque Object Object-C desde la función C
- 16. Entity Framework TypeUsage Object
- 17. object to string array
- 18. Java MongoDB Object Versioning
- 19. Controles GUI "Object Aware"
- 20. Opensource Object Database?
- 21. android application object
- 22. Python Object Inspector GUI
- 23. python threadsafe object cache
- 24. Acceso Dancer Log object?
- 25. create xml from object
- 26. Ruby Array find_first object?
- 27. F # quotations object graph
- 28. CoreData Edit/Overwrite Object
- 29. sizeof java object
- 30. C# Camera Object Tracking
En realidad no, no lo hacemos porque somos humanos, no objetos de Java. – BoltClock
Bueno, técnicamente somos objetos (aunque muy complejos) ... incluso si no nos gusta que se nos considere como tales. – CheesePls