﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>语源科技BlogJava-SEOIT</title><link>http://www.blogjava.net/tjsjrx2010/</link><description>SEO学习</description><language>zh-cn</language><lastBuildDate>Thu, 23 Apr 2026 08:19:51 GMT</lastBuildDate><pubDate>Thu, 23 Apr 2026 08:19:51 GMT</pubDate><ttl>60</ttl><item><title>ScheduledExecutorService的实现类</title><link>http://www.blogjava.net/tjsjrx2010/archive/2011/01/12/342830.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Wed, 12 Jan 2011 03:29:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2011/01/12/342830.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/342830.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2011/01/12/342830.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/342830.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/342830.html</trackback:ping><description><![CDATA[<p>首先ScheduledExecutorService基于ExecutorService，是一个完整的线程池调度。另外在提供线程池的基础上增加了四个调度任务的API。</p>
<ul>
    <li>schedule(Runnable command,long delay, TimeUnit unit)：在指定的延迟时间一次性启动任务（Runnable），没有返回值。  </li>
    <li>schedule(Callable&lt;V&gt; callable, long delay, TimeUnit unit)：在指定的延迟时间一次性启动任务（Callable），携带一个结果。  </li>
    <li>scheduleAtFixedRate(Runnable command,long initialDelay,long period,TimeUnit unit)：建并执行一个在给定初始延迟后首次启用的定期操作，后续操作具有给定的周期；也就是将在 <tt>initialDelay</tt> 后开始执行，然后在 <tt>initialDelay+period</tt> 后执行，接着在 <tt>initialDelay + 2 * period</tt> 后执行，依此类推。如果任务的任何一个执行遇到异常，则后续执行都会被取消。否则，只能通过执行程序的取消或终止方法来终止该任务。如果此任务的任何一个执行要花费比其周期更长的时间，则将推迟后续执行，但不会同时执行。  </li>
    <li>scheduleWithFixedDelay(Runnable command,long initialDelay,long
    delay,TimeUnit
    unit)：创建并执行一个在给定初始延迟后首次启用的定期操作，随后，在每一次执行终止和下一次执行开始之间都存在给定的延迟。如果任务的任一执行遇到
    异常，就会取消后续执行。否则，只能通过执行程序的取消或终止方法来终止该任务。</li>
</ul>
<img src ="http://www.blogjava.net/tjsjrx2010/aggbug/342830.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2011-01-12 11:29 <a href="http://www.blogjava.net/tjsjrx2010/archive/2011/01/12/342830.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>真快啊来到blogjava 一年多了。</title><link>http://www.blogjava.net/tjsjrx2010/archive/2011/01/06/342410.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Thu, 06 Jan 2011 03:29:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2011/01/06/342410.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/342410.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2011/01/06/342410.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/342410.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/342410.html</trackback:ping><description><![CDATA[真快啊来到blogjava 一年多了。2010过去了。在这里我认识了好多朋友。<br />
时间无法倒流，过去了就只能永远过去了。孩子能呆在身边的日子是多么难得与宝贵。因为这一点，我更加的珍惜与孩子相处的每一刻，也让我无论遇到什么，都心
存感恩。谢谢上天给我这么一个孩子，让我分享与见证他成长的每一刻。无论带给我多少困难，烦恼，甚至挫败，无论让我失去多少睡眠，时间，金钱，精力，我仍
然豁达，因为，这都是上天的恩赐。 <br />
<br />
<img src ="http://www.blogjava.net/tjsjrx2010/aggbug/342410.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2011-01-06 11:29 <a href="http://www.blogjava.net/tjsjrx2010/archive/2011/01/06/342410.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java Swing组件大全超牛的例子</title><link>http://www.blogjava.net/tjsjrx2010/archive/2009/12/11/305663.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Fri, 11 Dec 2009 15:49:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2009/12/11/305663.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/305663.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2009/12/11/305663.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/305663.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/305663.html</trackback:ping><description><![CDATA[<p align="center">&nbsp;</p>
这个程序了不得，基本控件全包含进去了。。。真佩服这个程序的作者
<p>　　package ch02.section02;</p>
<p>　　import javax.swing.*;</p>
<p>　　import java.awt.*;</p>
<p>　　import java.awt.event.*;</p>
<p>　　import javax.swing.tree.*;</p>
<p>　　import javax.swing.event.*;</p>
<p>　　import javax.swing.border.*;</p>
<p>　　import javax.swing.table.*;</p>
<p>　　public class SwingTest extends JFrame{</p>
<p>　　public SwingTest(){</p>
<p>　　MenuTest menuTest=new MenuTest();</p>
<p>　　LeftPanel leftPanel=new LeftPanel();</p>
<p>　　RightPanel rightPanel=new RightPanel();</p>
<p>　　BottomPanel bottomPanel=new BottomPanel();</p>
<p>　　CenterPanel centerPanel=new CenterPanel();</p>
<p>　　Container c=this.getContentPane();</p>
<p>　　this.setJMenuBar(menuTest);</p>
<p>　　c.add(leftPanel,BorderLayout.WEST);</p>
<p>　　c.add(rightPanel,BorderLayout.EAST);</p>
<p>　　c.add(centerPanel,BorderLayout.CENTER);</p>
<p>　　c.add(bottomPanel,BorderLayout.SOUTH);</p>
<p>　　this.addWindowListener(new WindowAdapter(){</p>
<p>　　public void WindowClosing(WindowEvent e){</p>
<p>　　dispose();</p>
<p>　　System.exit(0);</p>
<p>　　}</p>
<p>　　});</p>
<p>　　setSize(700,500);</p>
<p>　　setTitle("Swing 组件大全简体版");</p>
<p>　　setUndecorated(true);</p>
<p>　　setLocation(200,150);</p>
<p>　　show();</p>
<p>　　}</p>
<p>　　class MenuTest extends JMenuBar{</p>
<p>　　private JDialog aboutDialog;</p>
<p>　　public MenuTest(){</p>
<p>　　JMenu fileMenu=new JMenu("文件");</p>
<p>　　JMenuItem exitMenuItem=new JMenuItem("退出",KeyEvent.VK_E);</p>
<p>　　JMenuItem aboutMenuItem=new JMenuItem("关于..",KeyEvent.VK_A);</p>
<p>　　fileMenu.add(exitMenuItem);</p>
<p>　　fileMenu.add(aboutMenuItem);</p>
<p>　　this.add(fileMenu);</p>
<p>　　aboutDialog=new JDialog();</p>
<p>　　initAboutDialog();</p>
<p>　　exitMenuItem.addActionListener(new ActionListener(){</p>
<p>　　public void actionPerformed(ActionEvent e){</p>
<p>　　dispose();</p>
<p>　　System.exit(0);</p>
<p>　　}</p>
<p>　　});</p>
<p>　　aboutMenuItem.addActionListener(new ActionListener(){</p>
<p>　　public void actionPerformed(ActionEvent e){</p>
<p>　　aboutDialog.show();</p>
<p>　　}</p>
<p>　　});</p>
<p>　　}</p>
<img src ="http://www.blogjava.net/tjsjrx2010/aggbug/305663.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2009-12-11 23:49 <a href="http://www.blogjava.net/tjsjrx2010/archive/2009/12/11/305663.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java环境配置大全</title><link>http://www.blogjava.net/tjsjrx2010/archive/2009/11/28/304030.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Sat, 28 Nov 2009 09:17:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2009/11/28/304030.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/304030.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2009/11/28/304030.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/304030.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/304030.html</trackback:ping><description><![CDATA[<p>安装JDK<br />
&nbsp;&nbsp;&nbsp; 从java.sun.com/"&gt;http://java.sun.com/下载jdk-1_5_0_04-windows-i586-p.exe<br />
&nbsp;&nbsp;&nbsp; 安装到指定路径，我选择D:jdk1.5.0<br />
&nbsp;&nbsp;&nbsp; 配置环境变量：<br />
&nbsp;&nbsp;&nbsp; JAVA_HOME: D:jdk1.5.0<br />
&nbsp;&nbsp;&nbsp; PATH: D:jdk1.5.0in;<br />
&nbsp;&nbsp;&nbsp; CLASSPATH: .;D:jdk1.5.0lib ools.jar;D:jdk1.5.0jrelib t.jar;</p>
<p>安装WTK<br />
&nbsp;&nbsp;&nbsp; 从java.sun.com/"&gt;http://java.sun.com/下载j2me_wireless_toolkit-2_2-windows.exe<br />
&nbsp;&nbsp;&nbsp; 安装到指定路径，我选择D:WTK22</p>
<p>安装Eclipse<br />
&nbsp;&nbsp;&nbsp; 从http://www.eclipse.org/下载eclipse-SDK-3.0.1-win32.zip和<br />
&nbsp;&nbsp;&nbsp; NLpack-eclipse-SDK-3.0.x-win32.zip（语言包）<br />
&nbsp;&nbsp;&nbsp; 解压缩eclipse-SDK-3.0.1-win32.zip即可，我的路径：D:MyDevelopToolseclipse<br />
&nbsp;&nbsp;&nbsp; 解压缩NLpack-eclipse-SDK-3.0.x-win32.zip,得到features和plugins两个文件夹，把里面的文件分别拷入eclipse中相应的目录下即可<br />
&nbsp;&nbsp;&nbsp; <br />
安装Tomcat<br />
&nbsp;&nbsp;&nbsp; 从http://jakarta.apache.org/下载jakarta-tomcat-5.5.9.zip<br />
&nbsp;&nbsp;&nbsp; 解压缩jakarta-tomcat-5.5.9.zip即可<br />
&nbsp;&nbsp;&nbsp; 配置环境变量：<br />
&nbsp;&nbsp;&nbsp; Tomcat_Home: D:MyDevelopTools omcat-5.5.9<br />
&nbsp;&nbsp;&nbsp; PATH: D:MyDevelopTools omcat-5.5.9;</p>
<p><br />
在eclipse中配置J2ME开发环境：<br />
安装eclipseme:<br />
&nbsp;&nbsp;&nbsp; 从http://www.eclipseme.org/下载eclipseme.feature_0.9.4_site.zip<br />
&nbsp;&nbsp;&nbsp; 在eclipse中选择帮助-〉软件更新-〉查找并安装-〉搜索要安装的新功能部件-〉新建已归档的站点<br />
&nbsp;&nbsp;&nbsp; 选择eclipseme.feature_0.9.4_site.zip，打开-〉选择eclipseme.feature_0.9.4_site.zip，剩下的一直下一步就可以了。安装完成会在窗口-〉首选项中出现J2ME<br />
修改JAVA-〉调试：<br />
&nbsp;&nbsp;&nbsp; 选中JAVA-〉调试，把暂挂执行的前两项点去，通信中的调试器超时改为15000<br />
配置WTK<br />
&nbsp;&nbsp;&nbsp; 窗口-〉首选项-〉J2ME-〉Platform Components<br />
&nbsp;&nbsp;&nbsp; 右键单击对话框右侧的Wireless Toolkit，选择Add Wireless Toolkit,<br />
&nbsp;&nbsp;&nbsp; 选择WTK安装目录，eclipse会自动匹配。</p>
<p>在eclipse中配置J2EE开发环境(Tomcat5.5.9)：<br />
安装EMF-RunTime:<br />
&nbsp;&nbsp;&nbsp; 从http://www.eclipseme.org/下载emf-sdo-runtime-2.0.1.zip<br />
&nbsp;&nbsp;&nbsp; 解压缩emf-sdo-runtime-2.0.1.zip,得到features和plugins两个文件夹，把里面的文件分别拷入eclipse中相应的目录下即可。&nbsp;&nbsp;&nbsp; <br />
安装Lomboz：<br />
&nbsp;&nbsp;&nbsp; 从http://forge.objectweb.org下载org.objectweb.lomboz_3.0.1.N20050106.zip解压缩org.objectweb.lomboz_3.0.1.N20050106.zip,得到features和plugins两个文件夹，把里面的文件分别拷入eclipse中相应的目录下。如果在窗口-〉首选项中有Lomboz选项就安装正确，如果没有，在D:eclipseconfiguration下删除org.eclipse.update这个文件夹,再重起eclipse就可以了。<br />
配置Lomboz:<br />
&nbsp;&nbsp;&nbsp; 在D:eclipsepluginscom.objectlearn.jdt.j2ee_3.0.1servers下新建一个文件tomcat559.server，里面的内容从tomcat50x.server全部复制过来，把name="Apache Tomcat v5.0.x"替换成name="Apache Tomcat v5.5.9"，然后把所有的<br />
&#8220;${serverRootDirectory}/bin;${serverRootDirectory}/common/endorsed&#8221;替换成<br />
&#8220;${serverRootDirectory}/common/endorsed&#8221;就可以了。然后进入eclipse，窗口-〉首选项-〉Lomboz,把JDK Tools.jar改为：D:jdk1.5.0lib ools.jar，窗口-〉首选项-〉Lomboz-〉Server Definitions,在Server types中选择Tomcat5.5.9在Application Server Directory和Classpath Variable的路径改为D:/MyDevelopTools/tomcat-5.5.9先应用，再确定就可以了。</p>
<p><br />
<strong>来自：JAVA中文站</strong>:&nbsp; 我们要做中国最好的JAVA门户网站,　 </p>
<img src ="http://www.blogjava.net/tjsjrx2010/aggbug/304030.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2009-11-28 17:17 <a href="http://www.blogjava.net/tjsjrx2010/archive/2009/11/28/304030.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>句柄以及对象的比较java</title><link>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303909.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Fri, 27 Nov 2009 08:07:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303909.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/303909.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303909.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/303909.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/303909.html</trackback:ping><description><![CDATA[关系运算符==和!=也适用于所有对象，但它们的含义通常会使初涉Java领域的人找不到北。下面是一个例子：
<p>&nbsp;&nbsp;&nbsp; //: Equivalence.java</p>
<p>&nbsp;&nbsp;&nbsp; public class Equivalence {</p>
<p>&nbsp;&nbsp;&nbsp; public static void main(String[] args) {</p>
<p>&nbsp;&nbsp;&nbsp; Integer n1 = new Integer(47);</p>
<p>&nbsp;&nbsp;&nbsp; Integer n2 = new Integer(47);</p>
<p>&nbsp;&nbsp;&nbsp; System.out.println(n1 == n2);</p>
<p>&nbsp;&nbsp;&nbsp; System.out.println(n1 != n2);</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; } ///:~</p>
<p>&nbsp;&nbsp;&nbsp; 其中，表达式System.out.println(n1 == n2)可打印出内部的布尔比较结果。一般人都会认为输出结果肯定先是true，再是false，因为两个Integer对象都是相同的。但尽管对象的内容相同，句柄却是不同的，而==和!=比较的正好就是对象句柄。所以输出结果实际上先是false，再是true。这自然会使第一次接触的人感到惊奇。</p>
<p>&nbsp;&nbsp;&nbsp; 若想对比两个对象的实际内容是否相同，又该如何操作呢？此时，必须使用所有对象都适用的特殊方法equals()。但这个方法不适用于&#8220;主类型&#8221;，那些类型直接使用==和!=即可。下面举例说明如何使用：</p>
<p>&nbsp;&nbsp;&nbsp; //: EqualsMethod.java</p>
<p>&nbsp;&nbsp;&nbsp; public class EqualsMethod {</p>
<p>&nbsp;&nbsp;&nbsp; public static void main(String[] args) {</p>
<p>&nbsp;&nbsp;&nbsp; Integer n1 = new Integer(47);</p>
<p>&nbsp;&nbsp;&nbsp; Integer n2 = new Integer(47);</p>
<p>&nbsp;&nbsp;&nbsp; System.out.println(n1.equals(n2));</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; } ///:~</p>
<p>&nbsp;&nbsp;&nbsp; 正如我们预计的那样，此时得到的结果是true。但事情并未到此结束！假设您创建了自己的类，就象下面这样：</p>
<p>&nbsp;&nbsp;&nbsp; //: EqualsMethod2.java</p>
<p>&nbsp;&nbsp;&nbsp; class Value {</p>
<p>&nbsp;&nbsp;&nbsp; int i;</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; public class EqualsMethod2 {</p>
<p>&nbsp;&nbsp;&nbsp; public static void main(String[] args) {</p>
<p>&nbsp;&nbsp;&nbsp; Value v1 = new Value();</p>
<p>&nbsp;&nbsp;&nbsp; Value v2 = new Value();</p>
<p>&nbsp;&nbsp;&nbsp; v1.i = v2.i = 100;</p>
<p>&nbsp;&nbsp;&nbsp; System.out.println(v1.equals(v2));</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; } ///:~</p>
<p>&nbsp;&nbsp;&nbsp; 此时的结果又变回了false！这是由于equals()的默认行为是比较句柄。所以除非在自己的新类中改变了equals()，否则不可能表现出我们希望的行为。不幸的是，要到第7章才会学习如何改变行为。但要注意equals()的这种行为方式同时或许能够避免一些&#8220;灾难&#8221;性的事件。</p>
<p>&nbsp;&nbsp;&nbsp; 大多数Java类库都实现了equals()，所以它实际比较的是对象的内容，而非它们的句柄<br />
<br />
<br />
中国IT实验室</p>
<img src ="http://www.blogjava.net/tjsjrx2010/aggbug/303909.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2009-11-27 16:07 <a href="http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303909.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C#和Java是工作日语言</title><link>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303876.html</link><dc:creator>文化</dc:creator><author>文化</author><pubDate>Fri, 27 Nov 2009 03:48:00 GMT</pubDate><guid>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303876.html</guid><wfw:comment>http://www.blogjava.net/tjsjrx2010/comments/303876.html</wfw:comment><comments>http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303876.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/tjsjrx2010/comments/commentRss/303876.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/tjsjrx2010/services/trackbacks/303876.html</trackback:ping><description><![CDATA[Stack Overflow是很受欢迎的程序设计问题协作式问答社区，当程序员在编程中遇到问题，他们会在Stack Overflow上发帖讨论，这些问题会涉及到各种语言。于是便提出一个有趣的问题：在工作日程序员通常问何种语言的问题较多，周末呢？ 使用Stack Overflow的存档，Dan Lorenc分析了一周内程序语言的活跃性。<br />
结果发现：到了周末询问Python和Ruby相关问题的数量上升，而C#和Java的数量下降。这意味着程序员周末在个人项目上使用较多的是Python和Ruby语言，可能是因为它们用起来让人愉快。下次当Boss让你选择工作语言时，你或许可以向他展示这个结果。
 <img src ="http://www.blogjava.net/tjsjrx2010/aggbug/303876.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/tjsjrx2010/" target="_blank">文化</a> 2009-11-27 11:48 <a href="http://www.blogjava.net/tjsjrx2010/archive/2009/11/27/303876.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>