{"id":4626,"date":"2016-07-31T06:13:18","date_gmt":"2016-07-31T10:13:18","guid":{"rendered":"http:\/\/kodegeek.com\/blog\/?p=4626"},"modified":"2016-07-31T06:13:18","modified_gmt":"2016-07-31T10:13:18","slug":"trucos-con-static-en-java","status":"publish","type":"post","link":"http:\/\/kodegeek.com\/blog\/2016\/07\/31\/trucos-con-static-en-java\/","title":{"rendered":"Trucos con &#8216;static&#8217; en Java"},"content":{"rendered":"<p>Les voy a mostrar un peque\u00f1o truco en Java. \u00bfCual es la salida del siguiente c\u00f3digo?<\/p>\n<pre lang=\"Java\">\r\npackage com.kodegeek;\r\n\r\n\r\npublic class StaticWeird {\r\n\r\n    public static int count = 0;\r\n\r\n    public static void print() {\r\n        System.out.println(++count);\r\n    }\r\n\r\n    \/**\r\n     * What is the output?\r\n     * @param args\r\n     *\/\r\n    public static void main(String [] args) {\r\n        StaticWeird weird = new StaticWeird();\r\n        weird.print();\r\n        weird = null; \/\/ Magic hat trick\r\n        weird.print(); \/\/ Expecting an NPE :-)?\r\n    }\r\n\r\n\r\n}\r\n<\/pre>\n<p>No es &#8220;NullPointerException&#8221;. Java sabe que la referencia al m\u00e9todo es est\u00e1tica (static) y utiliza esa en vez de una referencia a la instancia de la clase.<\/p>\n<p>\u00a1Java tramposo! \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les voy a mostrar un peque\u00f1o truco en Java. \u00bfCual es la salida del siguiente c\u00f3digo? package com.kodegeek; public class StaticWeird { public static int count = 0; public static void print() { System.out.println(++count); } \/** * What is the output? * @param args *\/ public static void main(String [] args) { StaticWeird weird = <a class=\"read-more\" href=\"http:\/\/kodegeek.com\/blog\/2016\/07\/31\/trucos-con-static-en-java\/\">[&hellip;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[194],"tags":[806,757,805],"_links":{"self":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts\/4626"}],"collection":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/comments?post=4626"}],"version-history":[{"count":3,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts\/4626\/revisions"}],"predecessor-version":[{"id":4629,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts\/4626\/revisions\/4629"}],"wp:attachment":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/media?parent=4626"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/categories?post=4626"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/tags?post=4626"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}