{"id":571,"date":"2019-11-13T14:50:21","date_gmt":"2019-11-13T17:50:21","guid":{"rendered":"https:\/\/micheladrianomedeiros.com.br\/blog\/?p=571"},"modified":"2019-11-13T14:54:12","modified_gmt":"2019-11-13T17:54:12","slug":"aprendendo-java-para-certificacao-9","status":"publish","type":"post","link":"https:\/\/micheladrianomedeiros.com.br\/blog\/aprendendo-java-para-certificacao-9\/","title":{"rendered":"Aprendendo Java Para Certifica\u00e7\u00e3o #9"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Ordena\u00e7\u00e3o de Elementos de uma\nClasse<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A tabela mostra a ordem de declara\u00e7\u00e3o dos elementos de uma classe.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"509\" height=\"219\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-9.png\" alt=\"\" class=\"wp-image-572\" srcset=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-9.png 509w, https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-9-300x129.png 300w\" sizes=\"auto, (max-width: 509px) 100vw, 509px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos ver um exemplo:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"567\" height=\"131\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-14.png\" alt=\"\" class=\"wp-image-579\" srcset=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-14.png 567w, https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-14-300x69.png 300w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Garbage Collection<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Garbage collection refere-se\nao processo autom\u00e1tico da libera\u00e7\u00e3o de mem\u00f3ria no heap que remove objetos que\nn\u00e3o est\u00e3o mais sendo utilizados pelo programa.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">H\u00e1 diferentes algoritmos para garbage\ncollection, mas voc\u00ea n\u00e3o precisa saber nada disto para o exame.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O que voc\u00ea precisa saber \u00e9 que\nexiste o System.gc() o qual n\u00e3o \u00e9 garantido que execute, outra coisa que voc\u00ea deve\nsaber \u00e9 reconhecer objetos que s\u00e3o eleg\u00edveis para o garbage collection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos ver o que \u00e9 este System.gc().\nPelo nome voc\u00ea deve achar que este m\u00e9todo executa o garbage collection. S\u00f3 que\nn\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O m\u00e1ximo que acontece \u00e9 que\nvoc\u00ea diz ao Java que \u00e9 uma boa hora para o Java executar o garbage collection,\nmas isto n\u00e3o significa que ele ir\u00e1 executar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Um objeto permanecer\u00e1 no heap\nat\u00e9 n\u00e3o for mais necess\u00e1rio. O objeto n\u00e3o \u00e9 mais necess\u00e1rio quando acontece uma\ndas duas situa\u00e7\u00f5es acontecer:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>O objeto n\u00e3o \u00e9 mais referenciado.<\/li><li>Todas as refer\u00eancias do objeto est\u00e3o fora do\nescopo.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00e3o confunda uma refer\u00eancia com\no objeto que \u00e9 referenciado, s\u00e3o coisas diferentes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A refer\u00eancia \u00e9 uma vari\u00e1vel\nque tem nome e pode ser usado para acessar conte\u00fados de um objeto. Uma refer\u00eancia\npode ser assinada por outra refer\u00eancia, passada por um m\u00e9todo ou retornado por\num m\u00e9todo. Todas as refer\u00eancias t\u00eam o mesmo tamanho e n\u00e3o importa o tipo. (1)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Um objeto que esteja no heap, ele n\u00e3o tem nome. Com isto, voc\u00ea n\u00e3o tem meio de acessar o objeto a n\u00e3o ser por refer\u00eancia. Os objetos vir\u00e3o de todas as formas e tamanhos e consumir\u00e3o quantidade diferentes de mem\u00f3ria. Um objeto n\u00e3o pode ser assinado por outro objeto, nem pode ser passado ou retornado por m\u00e9todo. (2)<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"387\" height=\"201\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-10.png\" alt=\"\" class=\"wp-image-573\" srcset=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-10.png 387w, https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-10-300x156.png 300w\" sizes=\"auto, (max-width: 387px) 100vw, 387px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos ver a diferen\u00e7a entre refer\u00eancia e objeto para entender o garbage collection. Vamos ver o c\u00f3digo e entender quando o objeto fica eleg\u00edvel para o garbage collection:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"404\" height=\"176\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-11.png\" alt=\"\" class=\"wp-image-574\" srcset=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-11.png 404w, https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-11-300x131.png 300w\" sizes=\"auto, (max-width: 404px) 100vw, 404px\" \/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Na linha 3 s\u00e3o criadas as vari\u00e1veis one e two. Na linha 4 n\u00f3s temos o nosso primeiro objeto. Na linha 5 temos o nosso segundo objeto. A figura representa o que temos at\u00e9 agora.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"120\" height=\"91\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-12.png\" alt=\"\" class=\"wp-image-575\"\/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Na linha 6 a vari\u00e1vel one aponta para o \u201cb\u201d. Na linha 7 temos uma nova vari\u00e1vel com o nome three que \u00e9 referenciada ao \u201cb\u201d. Veja como fica.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"134\" height=\"139\" src=\"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-content\/uploads\/2019\/11\/image-13.png\" alt=\"\" class=\"wp-image-576\"\/><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Na linha 8 a refer\u00eancia da\nvari\u00e1vel one \u00e9 desfeita com o valor null. Vamos ver quando os objetos estavam\neleg\u00edveis para o garbage collection.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na linha 6 o objeto que cont\u00e9m o valor \u201ca\u201d pode ser eleito para o garbage collection. O objeto com o valor \u201cb\u201d s\u00f3 ser\u00e1 eleito para o garbage collection quando sair do escopo, ou seja, quando chegar na linha 10.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u2764\ufe0f Curso Java Para Iniciantes<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><a href=\"http:\/\/bit.ly\/java-swing\">http:\/\/bit.ly\/java-swing<\/a><\/p><\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc4d Curso de Desenvolvimento Web Completo<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><a href=\"http:\/\/bit.ly\/2FnB5Sp\">http:\/\/bit.ly\/2FnB5Sp<\/a><\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Ordena\u00e7\u00e3o de Elementos de uma Classe A tabela mostra a ordem de declara\u00e7\u00e3o dos elementos de uma classe. Vamos ver um exemplo: Garbage Collection Garbage collection refere-se ao processo autom\u00e1tico da libera\u00e7\u00e3o de mem\u00f3ria no heap que remove objetos que n\u00e3o est\u00e3o mais sendo utilizados pelo programa. H\u00e1 diferentes algoritmos para garbage collection, mas voc\u00ea [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":144,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[38,1],"tags":[],"class_list":["post-571","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-certificacao","category-java"],"_links":{"self":[{"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/posts\/571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/comments?post=571"}],"version-history":[{"count":3,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/posts\/571\/revisions"}],"predecessor-version":[{"id":580,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/posts\/571\/revisions\/580"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/media\/144"}],"wp:attachment":[{"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/media?parent=571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/categories?post=571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/micheladrianomedeiros.com.br\/blog\/wp-json\/wp\/v2\/tags?post=571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}