??xml version="1.0" encoding="utf-8" standalone="yes"?>欧洲免费在线视频,亚洲成人av一区,www.成人在线http://www.aygfsteel.com/airdream/category/6558.htmlJAVA DIARYzh-cnWed, 28 Feb 2007 14:50:45 GMTWed, 28 Feb 2007 14:50:45 GMT60国内digg|站大收?/title><link>http://www.aygfsteel.com/airdream/archive/2006/11/26/83630.html</link><dc:creator>AIRDREAM</dc:creator><author>AIRDREAM</author><pubDate>Sun, 26 Nov 2006 08:45:00 GMT</pubDate><guid>http://www.aygfsteel.com/airdream/archive/2006/11/26/83630.html</guid><wfw:comment>http://www.aygfsteel.com/airdream/comments/83630.html</wfw:comment><comments>http://www.aygfsteel.com/airdream/archive/2006/11/26/83630.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/airdream/comments/commentRss/83630.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/airdream/services/trackbacks/83630.html</trackback:ping><description><![CDATA[ <p>酷宝 <a target="_blank">http://qopo.net(<font color="#ff0000">推荐</font>)</a><br />新崛L(fng)中文DiggQh气很?br /></p> <p>奇客|?a target="_blank">http://diglog.com/ Q?font color="#ff3300">推荐</font>Q?/a><br />奇客发现 有趣新鲜<br /><br />H窝|?a target="_blank">http://www.mywowo.com/ </a><br />用Digg+点评方式来介lweb2.0的网?br /><br />板儿砖?a target="_blank">http://www.banerzhuan.com/</a><br />相当有创意的digg式网站?br /><br />新聚|?a target="_blank">http://www.tagriver.com/ </a><br />博客时代的新型交?br /><br />啊|?a target="_blank">http://www.dingr.com/ </a><br />关于U技的头版新?br /><br />抓虾|?a target="_blank">http://www.zhuaxia.com/ </a><br />集rss订阅和digg挖掘Z体?br /><br />比客H?a target="_blank">http://www.pkooo.com/</a><br />以资讯ؓ(f)ȝPK新闻<br /><br />?sh)?jing)发现 <a target="_blank">http://www.new21.cn/ </a><br />?sh)?jing)发现·分n<br /><br />爱发玊W?a target="_blank">http://www.ifaxian.com/ </a><br />依靠C֌的力量找出网上有阅读价值的内容<br /><br />新热|?a target="_blank">http://www.newhots.com/ </a><br />针对技术,BT资源Q娱乐的|摘|站<br /><br />教育资源挖掘 <a target="_blank">http://www.edudig.net/ </a><br />发掘互联|上有h(hun)值的教育资源<br /><br />17DIG|?a target="_blank">http://www.17dig.com/ </a><br />发掘I(y)T新闻Q草根们的新?br /><br />中国掘客 <a target="_blank">http://www.cndigg.com/ </a><br />完全是digg.com的中文版<br /><br />vottie 熱門q<br /><a target="_blank">http://www.vottie.com/</a><br />短片、熱門q<br /><br />发掘之狐<br /><a target="_blank">http://www.diggfox.com/</a><br />发掘之狐<br /><br />livedigg|digg直播 <br /><a target="_blank">http://www.livedigg.com/</a><br />发掘|络上的C?br /><br />奇乐无穷 <br /><a target="_blank">http://www.qlwq.com/</a><br />web2.0留学C֌QDigg贴吧模式,国内首创!<br /><br />Buzzc<br /><a target="_blank">http://www.buzzc.com/</a><br />汇集|络最热门</p> <p>Web2.0|站集合</p> <p> <a target="_blank">http://www.web2list.cn/</a> </p> <img src ="http://www.aygfsteel.com/airdream/aggbug/83630.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/airdream/" target="_blank">AIRDREAM</a> 2006-11-26 16:45 <a href="http://www.aygfsteel.com/airdream/archive/2006/11/26/83630.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Tapestry+Ibatis+Spring 写的Digg|站。效果不错!http://www.aygfsteel.com/airdream/archive/2006/11/14/81100.htmlAIRDREAMAIRDREAMTue, 14 Nov 2006 04:53:00 GMThttp://www.aygfsteel.com/airdream/archive/2006/11/14/81100.htmlhttp://www.aygfsteel.com/airdream/comments/81100.htmlhttp://www.aygfsteel.com/airdream/archive/2006/11/14/81100.html#Feedback1http://www.aygfsteel.com/airdream/comments/commentRss/81100.htmlhttp://www.aygfsteel.com/airdream/services/trackbacks/81100.html站名Q酷?br />地址Q?a >http://qopo.net


AIRDREAM 2006-11-14 12:53 发表评论
]]>
spring+velocity自动发送邮?http://www.aygfsteel.com/airdream/archive/2006/07/12/57760.htmlAIRDREAMAIRDREAMWed, 12 Jul 2006 02:58:00 GMThttp://www.aygfsteel.com/airdream/archive/2006/07/12/57760.htmlhttp://www.aygfsteel.com/airdream/comments/57760.htmlhttp://www.aygfsteel.com/airdream/archive/2006/07/12/57760.html#Feedback0http://www.aygfsteel.com/airdream/comments/commentRss/57760.htmlhttp://www.aygfsteel.com/airdream/services/trackbacks/57760.html spring+velocity自动发送邮?/b>


1.下蝲spring?qing)velocitycdQ?br />
email配置文gQmail.propertiesQ?br />mail.default.from=jfishsz@163.com
mail.host=smtp.163.com
mail.username=xxxxxx
mail.password=xxxxxx
mail.smtp.auth=true
mail.smtp.timeout=25000

spring配置文gQapplicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
  "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
    <!-- For mail settings and future properties files -->
    <bean id="propertyConfigurer"
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
              <list>
                  <value>classpath:mail.properties</value>
              </list>
        </property>
    </bean>
    <bean id="mailSender"
        class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host">
              <value>${mail.host}</value>
        </property>
        <property name="username">
              <value>${mail.username}</value>
        </property>
        <property name="password">
              <value>${mail.password}</value>
        </property>
        <property name="javaMailProperties">
              <props>
                  <prop key="mail.smtp.auth">${mail.smtp.auth}</prop>
                  <prop key="mail.smtp.timeout">
                      ${mail.smtp.timeout}
                  </prop>
              </props>
        </property>
    </bean>
    <bean id="mailMessage"
        class="org.springframework.mail.SimpleMailMessage"
        singleton="false">
        <property name="from">
              <value>${mail.default.from}</value>
        </property>
       
    </bean>
    <bean id="sendMail" class="net.pms.email.SendMail">
        <property name="mailSender" ref="mailSender" />
        <property name="message" ref="mailMessage" />
        <property name="velocityEngine" ref="velocityEngine" />
    </bean>
    <!-- Configure Velocity for sending e-mail -->
    <bean id="velocityEngine"
        class="org.springframework.ui.velocity.VelocityEngineFactoryBean">
        <property name="velocityProperties">
              <props>
                  <prop key="resource.loader">class</prop>
                  <prop key="class.resource.loader.class">
                      org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
                  </prop>
                  <prop key="velocimacro.library"></prop>
              </props>
        </property>
    </bean>
</beans>
velocity模板文gQaccountCreated.vmQ?br />${message}

Username: ${username}
Password: ${Password}

Login at: ${applicationURL}

2.实现c?br />SendMail.java
package net.pms.email;

import java.util.Map;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.exception.VelocityException;
import org.springframework.mail.MailSender;
import org.springframework.mail.SimpleMailMessage;
import org.springframework.ui.velocity.VelocityEngineUtils;

public class SendMail {
    protected static final Log log = LogFactory.getLog(SendMail.class);

    private MailSender mailSender;

    private SimpleMailMessage message;

    private VelocityEngine velocityEngine;

    public void setVelocityEngine(VelocityEngine velocityEngine) {
        this.velocityEngine = velocityEngine;
    }

    public void setMailSender(MailSender mailSender) {
        this.mailSender = mailSender;
    }

    public void setMessage(SimpleMailMessage message) {
        this.message = message;
    }

    public void sendEmail(Map model) {
        message.setTo("jfishsz@163.com");
        message.setSubject("subject");
        String result = null;
        try {
              result = VelocityEngineUtils.mergeTemplateIntoString(
                      velocityEngine, "accountCreated.vm", model);
        } catch (VelocityException e) {
              e.printStackTrace();
        }
        message.setText(result);
        mailSender.send(message);
    }
}
试c:(x)SendMailTest.java
package net.pms.email;

import java.util.HashMap;
import java.util.Map;

import junit.framework.TestCase;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class SendMailTest extends TestCase {
    String[] paths = { "config/applicationContext*.xml" };

    ApplicationContext ctx = new ClassPathXmlApplicationContext(paths);

    SendMail s = (SendMail) ctx.getBean("sendMail");

    protected void setUp() throws Exception {
        super.setUp();
    }

    protected void tearDown() throws Exception {
        super.tearDown();
    }

    /*
    * Test method for 'net.pms.email.SendMail.sendEmail(Map)'
    */
    public void testSendEmail() {
        Map model = new HashMap();
        model.put("message", "msg");
        model.put("username", "jack");
        model.put("Password", "666666");
        model.put("applicationURL", "www.163.com");
        s.sendEmail(model);
    }

}
q只是一个简单的实现介绍Q我想通过q个例子q入通往javamail的大门?br />
原文Q?a >http://jfish.blog.ccidnet.com/blog/ccid/do_showone/tid_18513.html

AIRDREAM 2006-07-12 10:58 发表评论
]]>
java面试题集?四辑http://www.aygfsteel.com/airdream/archive/2006/01/05/26810.htmlAIRDREAMAIRDREAMThu, 05 Jan 2006 15:40:00 GMThttp://www.aygfsteel.com/airdream/archive/2006/01/05/26810.htmlhttp://www.aygfsteel.com/airdream/comments/26810.htmlhttp://www.aygfsteel.com/airdream/archive/2006/01/05/26810.html#Feedback0http://www.aygfsteel.com/airdream/comments/commentRss/26810.htmlhttp://www.aygfsteel.com/airdream/services/trackbacks/26810.html JAVA SERVLET API中forward() 与sendRedirect()的区别?
forward()Ҏ(gu)可以使用原来的对象,而且速度较快。地址栏不变化。只能在本机内的面间蟩转?br> redirect()Ҏ(gu)不可以用原来的对象Q而且速度较慢。地址栏变化。可以蟩转到M面和机器?br> :前者仅是容器中控制权的转向Q在客户端浏览器地址栏中不会(x)昄?gu){向后的地址Q后者则是完全的跌{Q浏览器会(x)得到跌{的地址Qƈ重新发送请求链接。这P从浏览器的地址栏中可以看到跌{后的链接地址。所以,前者更加高效,在前者可以满需要时Q尽量用forward()Ҏ(gu)Qƈ且,q样也有助于隐藏实际的链接。在有些情况下,比如Q需要蟩转到一个其它服务器上的资源Q则必须使用sendRedirect()Ҏ(gu)?
STRUTS的应?如STRUTS架构)
Struts框架的处理流E清楚的体现?jin)MVCpȝ的特点, Struts Controller ActionServlet处理客户hQ利用配|的ActionMapping对象把请求映到Action处理器对象进行处理。Action处理对象讉KActionForm中的数据Q处理和响应客户hQ它q调用后台的BeanlgQ这些组件封装了(jin)具体的业务逻辑。Action处理器对象根据处理结果通知ControllerQControllerq行下一步的处理?br> Struts是采用Java Servlet/JavaServer Pages技术,开发Web应用E序的开放源码的framework?采用Struts能开发出ZMVC(Model-View-Controller)设计模式的应用构架?Struts有如下的主要功能Q?
一.包含一个controller servletQ能用L(fng)h发送到相应的Action对象?
?JSP自由tag库,q且在controller servlet中提供关联支持,帮助开发员创徏交互式表单应用?
?提供?jin)一pd实用对象QXML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提C和消息?br> MVC的各个部分都有那些技术来实现?如何实现?
{?MVC是ModelQViewQController的简写?Model" 代表的是应用的业务逻辑Q通过JavaBeanQEJBlg实现Q, "View" 是应用的表示面(由JSP面产生Q,"Controller" 是提供应用的处理q程控制Q一般是一个ServletQ,通过q种设计模型把应用逻辑Q处理过E和昄逻辑分成不同的组件实现。这些组件可以进行交互和重用?
一个网|以下html代码片断

在a.jsp中,获取用户提交的age参数Q如果年龄大?00或是于{于0Q则昄“年龄不正确”的信息Q否则输出“你的年龄ؓ(f)Qxx岁”的信息?br> 请写出a.jsp中完成这部分处理的代码片断。(h意处理过E中的一些异常ExceptionQ?br> 有以下jsp代码片断
If(isTrue())
{
Response.sendRedirect(?index.html?;
}
System.out.println(“l执行?;
我们希望Q如果isTrue()为真Q则中止E序q行Q直接蟩转到/index.html。但是在E序执行q程中,?x)l执行后面输出“l执行”的代码呢?
jsp有哪些内|对?作用分别是什?
JSP共有以下9U基本内|组?br> request 用户端请求,此请求会(x)包含来自GET/POSTh的参?
response |页传回用户端的回应
pageContext |页的属性是在这里管?
session 与请求有关的?x)话?
application servlet 正在执行的内?
out 用来传送回应的输出
config servlet的构枉?
page JSP|页本n
exception 针对错误|页Q未捕捉的例?
jsp有哪些动?作用分别是什?
JSP共有以下6U基本动?
jsp:includeQ在面被请求的时候引入一个文件?
jsp:useBeanQ寻找或者实例化一个JavaBean?
jsp:setPropertyQ设|JavaBean的属性?
jsp:getPropertyQ输出某个JavaBean的属性?
jsp:forwardQ把h转到一个新的页面?
jsp:pluginQ根据浏览器cd为Java插g生成OBJECT或EMBED标记
JSP中动态INCLUDE与静(rn)态INCLUDE的区别?
动态INCLUDE用jsp:include动作实现
它L?x)检查所含文件中的变化,适合用于包含动态页面,q且可以带参?
?rn)态INCLUDE用include伪码实现,定不?x)检查所含文件的变化Q适用于包含静(rn)态页?
<%@ include file="included.htm" %>
两种跌{方式分别是什?有什么区?
说一说Servlet的生命周?
servlet有良好的生存期的定义Q包括加载和实例化、初始化、处理请求以?qing)服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroyҎ(gu)表达?

你用的servlet和jsp的版本?
Servlet的基本架?
public class ServletName extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
}
get与post提交的异同?


AIRDREAM 2006-01-05 23:40 发表评论
]]>java面试题集?三辑 http://www.aygfsteel.com/airdream/archive/2006/01/05/26809.htmlAIRDREAMAIRDREAMThu, 05 Jan 2006 15:36:00 GMThttp://www.aygfsteel.com/airdream/archive/2006/01/05/26809.htmlhttp://www.aygfsteel.com/airdream/comments/26809.htmlhttp://www.aygfsteel.com/airdream/archive/2006/01/05/26809.html#Feedback0http://www.aygfsteel.com/airdream/comments/commentRss/26809.htmlhttp://www.aygfsteel.com/airdream/services/trackbacks/26809.html W一Q谈谈final, finally, finalize的区别?br> final?修饰W(关键字)(j)如果一个类被声明ؓ(f)finalQ意味着它不能再z出新的子c,不能作ؓ(f)父类被ѝ因此一个类不能既被声明?abstract的,又被声明为final的。将变量或方法声明ؓ(f)finalQ可以保证它们在使用中不被改变。被声明为final的变量必d声明时给定初|而在以后的引用中只能dQ不可修攏V被声明为final的方法也同样只能使用Q不能重? finally?再异常处理时提供 finally 块来执行M清除操作。如果抛Z个异常,那么相匹配的 catch 子句׃(x)执行Q然后控制就?x)进?finally 块(如果有的话)(j)? finalize?Ҏ(gu)名。Java 技术允怋?finalize() Ҏ(gu)在垃圾收集器对象从内存中清除出M前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对q个对象调用的。它是在 Object cM定义的,因此所有的c都l承?jin)它。子c覆?finalize() Ҏ(gu)以整理系l资源或者执行其他清理工作。finalize() Ҏ(gu)是在垃圾攉器删除对象之前对q个对象调用的?br> W二QAnonymous Inner Class (匿名内部c? 是否可以extends(l承)其它c,是否可以implements(实现)interface(接口)?
匿名的内部类是没有名字的内部cR不能extends(l承) 其它c,但一个内部类可以作ؓ(f)一个接口,由另一个内部类实现?br> W三QStatic Nested Class ?Inner Class的不同,说得多好(面试题有的很W统)?br> Nested Class Q一般是C++的说法)(j)QInner Class (一般是JAVA的说?。Java内部cMC++嵌套cL大的不同在于是否有指向外部的引用上。具体可见http: //www.frontfree.net/articles/services/view.asp?id=704&page=1
注:(x) ?rn)态内部类QInner ClassQ意味着1创徏一个static内部cȝ对象Q不需要一个外部类对象Q?不能从一个static内部cȝ一个对象访问一个外部类对象
W四Q??&的区别?br> &是位q算W?&是布?yu)(dng)逻辑q算W?br> W五QHashMap和Hashtable的区别?br> 都属于Map接口的类Q实C(jin)惟一键映到特定的g?br> HashMap cL有分cL者排序。它允许一?null 键和多个 null 倹{?
Hashtable cM?HashMapQ但是不允许 null 键和 null 倹{它也比 HashMap 慢,因ؓ(f)它是同步的?br> W六QCollection ?Collections的区别?br> Collections是个java.util下的c,它包含有各种有关集合操作的静(rn)态方法?br> Collection是个java.util下的接口Q它是各U集合结构的父接口?br>
W七Q什么时候用assert?br> 断言是一个包含布?yu)(dng)表辑ּ的语句,在执行这个语句时假定该表辑ּ?true。如果表辑ּ计算?falseQ那么系l会(x)报告一?AssertionError。它用于调试目的Q?
assert(a > 0); // throws an AssertionError if a <= 0
断言可以有两UŞ式:(x)
assert Expression1 ;
assert Expression1 : Expression2 ;
Expression1 应该L产生一个布?yu)(dng)倹{?
Expression2 可以是得Z个值的L表达式。这个值用于生成显C更多调试信息的 String 消息?br> 断言在默认情况下是禁用的。要在编译时启用断言Q需要?source 1.4 标记Q?
javac -source 1.4 Test.java

要在q行时启用断aQ可使用 -enableassertions 或?-ea 标记?
要在q行旉择用断言Q可使用 -da 或?-disableassertions 标记?
要系l类中启用断aQ可使用 -esa 或?-dsa 标记。还可以在包的基上启用或者禁用断a?
可以在预计正常情况下不会(x)到达的Q何位|上攄断言。断a可以用于验证传递给U有Ҏ(gu)的参数。不q,断言不应该用于验证传递给公有Ҏ(gu)的参敎ͼ因ؓ(f)不管是否启用?jin)断aQ公有方法都必须(g)查其参数。不q,既可以在公有Ҏ(gu)中,也可以在非公有方法中利用断言试后置条g。另外,断言不应该以M方式改变E序的状态?
W八QGC是什? Z么要有GC? (基础)?br> GC是垃圾收集器。Java E序员不用担?j)内存管理,因?f)垃圾攉器会(x)自动q行理。要h垃圾攉Q可以调用下面的Ҏ(gu)之一Q?
System.gc()
Runtime.getRuntime().gc()
W九(ji)QString s = new String("xyz");创徏?jin)几个String Object?
两个对象Q一个是“xyx?一个是指向“xyx”的引用对象s?br> W十QMath.round(11.5){於多少? Math.round(-11.5){於多少?
Math.round(11.5)q回QlongQ?2QMath.round(-11.5)q回QlongQ?11;
W十一Qshort s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
short s1 = 1; s1 = s1 + 1;有错Qs1是short型,s1+1是int?不能昑ּ转化为short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确?br> W十二,sleep() ?wait() 有什么区? 搞线E的最?br> sleep()Ҏ(gu)是ɾU程停止一D|间的Ҏ(gu)。在sleep 旉间隔期满后,U程不一定立x复执行。这是因为在那个时刻Q其它线E可能正在运行而且没有被调度ؓ(f)攑ּ执行Q除?br> (a)“醒来”的U程h更高的优先
(b)正在q行的线E因为其它原因而阻塞?br> wait()是线E交互时Q如果线E对一个同步对象x 发出一个wait()调用Q该U程?x)暂停执行,被调对象q入{待状态,直到被唤醒或{待旉到?br> W十三,Java有没有goto?
Goto?java中的保留字,现在没有在java中用?br> W十四,数组有没有length()q个Ҏ(gu)? String有没有length()q个Ҏ(gu)Q?br> 数组没有length()q个Ҏ(gu)Q有length的属性?br> String有有length()q个Ҏ(gu)?br> W十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的cd?
Ҏ(gu)的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父cM子类之间多态性的一U表玎ͼ重蝲Overloading是一个类中多态性的一U表现。如果在子类中定义某Ҏ(gu)与其父类有相同的名称和参敎ͼ我们说该Ҏ(gu)被重?(Overriding)。子cȝ对象使用q个Ҏ(gu)Ӟ调用子cM的定义,对它而言Q父cM的定义如同被“屏蔽”了(jin)。如果在一个类中定义了(jin)多个同名的方法,它们或有不同的参C数或有不同的参数cdQ则UCؓ(f)Ҏ(gu)的重?Overloading)。Overloaded的方法是可以改变q回值的cd?br> W十六,Set里的元素是不能重复的Q那么用什么方法来区分重复与否? 是用==q是equals()? 它们有何区别?
Set里的元素是不能重复的Q那么用iterator()Ҏ(gu)来区分重复与否。equals()是判M个Set是否相等?br> equals()?=Ҏ(gu)军_引用值是否指向同一对象equals()在类中被覆盖Qؓ(f)的是当两个分ȝ对象的内容和cd盔R的话Q返回真倹{?br> W十七,l我一个你最常见到的runtime exception?br> ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException
W十八,error和exception有什么区?
error 表示恢复不是不可能但很困隄情况下的一U严重问题。比如说内存溢出。不可能指望E序能处理这L(fng)情况?br> exception 表示一U设计或实现问题。也是_(d)它表C如果程序运行正常,从不?x)发生的情况?br> W十?ji),List, Set, Map是否l承自Collection接口?
ListQSet?br> Map不是
W二十,abstract class和interface有什么区?
声明Ҏ(gu)的存在而不d现它的类被叫做抽象类Qabstract classQ,它用于要创徏一个体现某些基本行为的c,qؓ(f)该类声明Ҏ(gu)Q但不能在该cM实现该类的情c(din)不能创建abstract cȝ实例。然而可以创Z个变量,其类型是一个抽象类Qƈ让它指向具体子类的一个实例。不能有抽象构造函数或抽象?rn)态方法。Abstract cȝ子类为它们父cM的所有抽象方法提供实玎ͼ否则它们也是抽象cMؓ(f)。取而代之,在子cM实现该方法。知道其行ؓ(f)的其它类可以在类中实现这些方法?br> 接口QinterfaceQ是抽象cȝ变体。在接口中,所有方法都是抽象的。多l承性可通过实现q样的接口而获得。接口中的所有方法都是抽象的Q没有一个有E序体。接口只可以定义static final成员变量。接口的实现与子cȝ|除了(jin)该实现类不能从接口定义中l承行ؓ(f)。当cd现特D接口时Q它定义Q即程序体l予Q所有这U接口的Ҏ(gu)。然后,它可以在实现?jin)该接口的类的Q何对象上调用接口的方法。由于有抽象c,它允怋用接口名作ؓ(f)引用变量的类型。通常的动态联~将生效。引用可以{换到接口cd或从接口cd转换Qinstanceof q算W可以用来决定某对象的类是否实现?jin)接口?
W二十一Qabstract的method是否可同时是static,是否可同时是nativeQ是否可同时是synchronized?
都不?br> W二十二Q接口是否可l承接口? 抽象cL否可实现(implements)接口? 抽象cL否可l承实体c?concrete class)?
接口可以l承接口。抽象类可以实现(implements)接口Q抽象类是否可承实体类Q但前提是实体类必须有明的构造函数?br>
W二十三Q启动一个线E是用run()q是start()?
启动一个线E是调用start()Ҏ(gu)QɾU程所代表的虚拟处理机处于可运行状态,q意味着它可以由JVM调度q执行。这q不意味着U程׃(x)立即q行。run()Ҏ(gu)可以产生必须退出的标志来停止一个线E?br> W二十四Q构造器Constructor是否可被override?
构造器Constructor不能被承,因此不能重写OverridingQ但可以被重载Overloading?br> W二十五Q是否可以承Stringc?
StringcLfinalcL不可以ѝ?br> W二十六Q当一个线E进入一个对象的一个synchronizedҎ(gu)后,其它U程是否可进入此对象的其它方?
不能Q一个对象的一个synchronizedҎ(gu)只能׃个线E访问?br> W二十七Qtry {}里有一个return语句Q那么紧跟在q个try后的finally {}里的code?x)不会(x)被执行Q什么时候被执行Q在return前还是后?
?x)执行,在return前执行?br> W二十八Q编E题: 用最有效率的Ҏ(gu)出2乘以8{於?
有C背景的程序员特别喜欢问这U问题?br> 2 << 3
W二十九(ji)Q两个对象值相?x.equals(y) == true)Q但却可有不同的hash codeQ这句话对不?
不对Q有相同的hash code?
W三十,当一个对象被当作参数传递到一个方法后Q此Ҏ(gu)可改变这个对象的属性,q可q回变化后的l果Q那么这里到底是g递还是引用传?
是g递。Java ~程语言只由g递参数。当一个对象实例作Z个参数被传递到Ҏ(gu)中时Q参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变Q但对象的引用是永远不会(x)改变的?br>
W三十一Qswtich是否能作用在byte上,是否能作用在long上,是否能作用在String?
switchQexpr1Q中Qexpr1是一个整数表辑ּ。因此传递给 switch ?case 语句的参数应该是 int?short?char 或?byte。long,string 都不能作用于swtich?br> W三十二Q编E题: 写一个Singleton出来?br> Singleton模式主要作用是保证在Java应用E序中,一个类Class只有一个实例存在?br> 一般Singleton模式通常有几U种形式:
W一UŞ? 定义一个类Q它的构造函Cؓ(f)private的,它有一个static的private的该cd量,在类初始化时实例话,通过一个public的getInstanceҎ(gu)获取对它的引?l而调用其中的Ҏ(gu)? public class Singleton {
  private Singleton(){}
  //在自己内部定义自׃个实例,是不是很奇怪?
  //注意q是private 只供内部调用
  private static Singleton instance = new Singleton();
  //q里提供?jin)一个供外部讉K本class的静(rn)态方法,可以直接讉K  
  public static Singleton getInstance() {
    return instance;   
   }
}
W二UŞ?
public class Singleton {
  private static Singleton instance = null;
  public static synchronized Singleton getInstance() {
  //q个Ҏ(gu)比上面有所改进Q不用每ơ都q行生成对象Q只是第一ơ     
  //使用时生成实例,提高?jin)效率?br>   if (instance==null)
    instanceQnew Singleton();
return instance;   }
}
其他形式:
定义一个类Q它的构造函Cؓ(f)private的,所有方法ؓ(f)static的?br> 一般认为第一UŞ式要更加安全些s


AIRDREAM 2006-01-05 23:36 发表评论
]]>
java面试题集?二辑http://www.aygfsteel.com/airdream/archive/2006/01/01/26267.htmlAIRDREAMAIRDREAMSun, 01 Jan 2006 11:37:00 GMThttp://www.aygfsteel.com/airdream/archive/2006/01/01/26267.htmlhttp://www.aygfsteel.com/airdream/comments/26267.htmlhttp://www.aygfsteel.com/airdream/archive/2006/01/01/26267.html#Feedback1http://www.aygfsteel.com/airdream/comments/commentRss/26267.htmlhttp://www.aygfsteel.com/airdream/services/trackbacks/26267.html阅读全文

AIRDREAM 2006-01-01 19:37 发表评论
]]>
վ֩ģ壺 ƽɽ| Դ| | ʯ| ͭ| | ʡ| | | | ƽ| | ƺ| | μԴ| Ѯ| | ̫ԭ| ף| | | | ݸ| | | | | ɽ| | Һ| Ȫ| | »| | | | ˹| ɫ| | | |