{"id":3374,"date":"2018-06-17T13:00:09","date_gmt":"2018-06-17T18:00:09","guid":{"rendered":"https:\/\/www.manualjava.net\/?p=3374"},"modified":"2018-06-17T17:09:02","modified_gmt":"2018-06-17T22:09:02","slug":"clase-object","status":"publish","type":"post","link":"https:\/\/www.manualjava.net\/?p=3374","title":{"rendered":"Clase object"},"content":{"rendered":"<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-3377\" src=\"https:\/\/www.manualjava.net\/wp-content\/uploads\/2018\/06\/java61.jpg\" alt=\"\" width=\"236\" height=\"89\" \/><\/p>\n<p><span style=\"color: #000000;\">Object es la superclase base de todas las clases de Java; toda clase definida en Java hereda de la clase Object y en consecuencia toda variable referencia a una clase se convierte, autom\u00e1ticamente, al tipo Object.\u00a0<\/span><br \/>\n<!--more--><\/p>\n<h3><strong><span style=\"color: #000000;\">Ejemplo<\/span><\/strong><\/h3>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0Object g;<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0String cd = new String(\u00abManual Java\u00bb);<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0Integer y = new Integer(72);\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \/\/ objeto inicializado a 72<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0g = cd;\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\/\/ g referencia al mismo objeto que cd<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0g = y;\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \/\/ g ahora referencia a un objeto Integer<\/span><\/p>\n<p><span style=\"color: #000000;\">La clase Object tiene dos m\u00e9todos importantes:\u00a0<strong>equals() y toString().\u00a0<\/strong>Generalmente, se redefinen en las clases para especializarlos.<\/span><\/p>\n<h2><span style=\"color: #000000;\"><strong>equals()<\/strong><\/span><\/h2>\n<p><span style=\"color: #000000;\">Compara el objeto que hace la llamada con el objeto que se pasa como argumento, devuelve true si son iguales.<\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0boolean equals(object k);<\/span><\/p>\n<p><span style=\"color: #000000;\">El siguiente ejemplo compara dos objetos, la comparaci\u00f3n es true si contienen la misma cadena.<\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0String argumento = new String(\u00abFeliz dia papa\u00bb);<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0String a = \u00abVida bella\u00bb;<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0if(argumento.equals(a))\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\/\/ no se cumple, devuelve false<\/span><\/p>\n<h2><span style=\"color: #000000;\"><strong>toString()<\/strong><\/span><\/h2>\n<p><span style=\"color: #000000;\">Este m\u00e9todo construye una cadena que es la representaci\u00f3n del objeto, devuelve la cadena. Normalmente se redefine en las clases para as\u00ed dar detalles expl\u00edcitos de los objetos de la clase.<\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0String toString();<\/span><\/p>\n<p><span style=\"color: #000000;\">En el siguiente ejemplo un objeto Double llama al m\u00e9todo toString() y asigna la cadena a una variable.<\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0Double r = new Double(2.5);<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0String respuesta;<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0respuesta = r.toString();<\/span><\/p>\n<h2><span style=\"color: #000000;\"><strong>Operador instanceof<\/strong><\/span><\/h2>\n<p><span style=\"color: #000000;\">Con frecuencia se necesita conocer la clase de la que es instancia un objeto. Se tiene que tener en cuenta que en las jerarqu\u00edas de clases se dan conversiones autom\u00e1ticas entre clases derivadas y su clase base, en particular, cualquier referencia de tipo clase se puede convertir a una variable de tipo Object.<\/span><\/p>\n<p><span style=\"color: #000000;\">Con el operador\u00a0<strong>instanceof\u00a0<\/strong>se determina la clase a la que pertenece un objeto, tiene dos operandos, el primero un objeto y el segundo una clase. Eval\u00faa la expresi\u00f3n a true si el primer operando es una instancia del segundo. La siguiente funci\u00f3n tiene un argumento de tipo Object, por consiguiente puede recibir cualquier referencia y selecciona la clase a la que pertenece el objeto transmitido (String, Vector, . . .):<\/span><\/p>\n<p><span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0public hacer(Object g){<br \/>\n<\/span>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <span style=\"color: #000000;\">\u00a0 if(g instanceof String)<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 . . .<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 else if (g instanceof Vector)<\/span><br \/>\n<span style=\"color: #000000;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 . . .<\/span><\/p>\n<h3><span style=\"color: #000000;\"><strong>A recordar<\/strong><\/span><\/h3>\n<p><span style=\"color: #000000;\">El operador\u00a0<strong>instanceof\u00a0<\/strong>se puede considerar un operador relacional, su evaluaci\u00f3n da como resultado un valor de tipo boolean.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Object es la superclase base de todas las clases de Java; toda clase definida en Java hereda de la clase Object y en consecuencia toda variable referencia a una clase se convierte, autom\u00e1ticamente, al tipo Object.\u00a0<\/p><p><a class=\"more-link btn\" href=\"https:\/\/www.manualjava.net\/?p=3374\">Seguir leyendo<\/a><\/p>\n","protected":false},"author":1,"featured_media":3377,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[],"_links":{"self":[{"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/posts\/3374"}],"collection":[{"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3374"}],"version-history":[{"count":23,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/posts\/3374\/revisions"}],"predecessor-version":[{"id":3399,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/posts\/3374\/revisions\/3399"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=\/wp\/v2\/media\/3377"}],"wp:attachment":[{"href":"https:\/\/www.manualjava.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3374"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3374"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.manualjava.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3374"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}