??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲熟妇自偷自拍另欧美,亚洲综合校园春色,亚洲AV无码国产一区二区三区 http://www.tkk7.com/cgogg/Take Easyzh-cnSat, 10 May 2025 17:04:12 GMTSat, 10 May 2025 17:04:12 GMT60动态图js脚本http://www.tkk7.com/cgogg/articles/128299.htmlchenguochenguoThu, 05 Jul 2007 03:53:00 GMThttp://www.tkk7.com/cgogg/articles/128299.htmlhttp://www.tkk7.com/cgogg/comments/128299.htmlhttp://www.tkk7.com/cgogg/articles/128299.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/128299.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/128299.html        <!-- 动态图开?-->

<script language=JavaScript>

 

var imgUrl=new Array();

var imgLink=new Array();

var adNum=0;

imgUrl[1]="images/default/toplist/1.jpg";

imgLink[1]="/z/chn-iran/photo/3712/index.shtml";

imgUrl[2]="images/default/toplist/2.jpg";

imgLink[2]="/z/chn-iran/photo/3712/index.shtml";

imgUrl[3]="images/default/toplist/3.jpg";

imgLink[3]="/z/chn-iran/photo/3672/";

imgUrl[4]="images/default/toplist/4.jpg";

imgLink[4]="/z/chn-iran/photo/3672/";

imgUrl[5]="images/default/toplist/5.jpg";

imgLink[5]="/z/chn-iran/photo/3672/";

 

 

var imgPre=new Array();

var j=0;

for (i=1;i<=5;i++) {

       if( (imgUrl[i]!="") && (imgLink[i]!="") ) {

              j++;

       } else {

              break;

       }

}

 

function playTran(){

       if (document.all)

              imgInit.filters.revealTrans.play();

}

 

var key=0;

function nextAd(){

       if(adNum<j)adNum++ ;

       else adNum=1;

     

       if( key==0 ){

              key=1;

       } else if (document.all){

              imgInit.filters.revealTrans.Transition=6;

              imgInit.filters.revealTrans.apply();

                 playTran();

 

       }

       document.images.imgInit.src=imgUrl[adNum];

       theTimer=setTimeout("nextAd()", 6000);

}

 

 

function goUrl(){

       jumpUrl=imgLink[adNum];

       jumpTarget='_blank';

       if (jumpUrl != ''){

              if (jumpTarget != '')

                     window.open(jumpUrl,jumpTarget);

              else

                     location.href=jumpUrl;

       }

}

</script>

<a href="javascript:goUrl()"><img style="FILTER: revealTrans(duration=2,transition=20);border-color:black;color:#000000" src="javascript:nextAd()" width=258 height=230 border=1 class=b1 name=imgInit></a>

<!-- 动态图l束 -->




chenguo 2007-07-05 11:53 发表评论
]]>
js焦点囄轮换--几个实例http://www.tkk7.com/cgogg/articles/128292.htmlchenguochenguoThu, 05 Jul 2007 03:37:00 GMThttp://www.tkk7.com/cgogg/articles/128292.htmlhttp://www.tkk7.com/cgogg/comments/128292.htmlhttp://www.tkk7.com/cgogg/articles/128292.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/128292.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/128292.html             <!--焦点囑ּ?->
    <SCRIPT type=text/javascript>
        var focus_width=290
        var focus_height=170
        var text_height=20
        var swf_height = focus_height+text_height
        
        var pics=‘1.jpg|2.jpg|3.jsp|4.jpg|5.jpg|‘;                                                                 
        var links='index.php|http://auto.qq.com/a/20051029/000009.htm|';
        var texts='靛蓝走过花季的梦q|忧郁因ؓ(f)思念的凝滞|偶尔的童心盛开烂O|更多时候一个h独处|一直在旁的亲密伴G';
        document.write('<object ID="focus_flash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+ focus_width +'" height="'+ swf_height +'">');
        document.write('<param name="allowScriptAccess" value="sameDomain"><param name="movie" value="http://auto.qq.com/flash/playswf.swf"><param name="quality" value="high"><param name="bgcolor" value="#FFFFFF">');
        document.write('<param name="menu" value="false"><param name=wmode value="opaque">');
        document.write('<param name="FlashVars" value="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'">');
        document.write('<embed ID="focus_flash" src="playswf.swf" wmode="opaque" FlashVars="pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'" menu="false" bgcolor="#C5C5C5" quality="high" width="'+ focus_width +'" height="'+ swf_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
        document.write('</object>');
       
        //-->
        </SCRIPT>

下面是falsh文gQ?object xcodebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab" height="200" width="200" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
一些好的下载链接:(x)http://blog.csdn.net/suilam/archive/2005/12/15/553280.aspx
lash轮播q告
http://bbs.blueidea.com/viewthread.php?tid=2374504&page=
[下蝲]l典代码一ơ全下蝲Q?flashqȝ片,囄qȝ片都有)(j)
http://bbs.powereasy.net/dispbbs.asp?boardID=28&ID=290178&page=10
箭? class= 韩国flash焦点大图q告代码 / / 2007-06-24
http://www.zcool.com.cn/jscode/ggcode/page_2.html
 


chenguo 2007-07-05 11:37 发表评论
]]>
ajax框架http://www.tkk7.com/cgogg/articles/128157.htmlchenguochenguoWed, 04 Jul 2007 09:58:00 GMThttp://www.tkk7.com/cgogg/articles/128157.htmlhttp://www.tkk7.com/cgogg/comments/128157.htmlhttp://www.tkk7.com/cgogg/articles/128157.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/128157.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/128157.htmlvar request =false;

function createXMLHttpRequest() {
        request = false;
        
        if(window.XMLHttpRequest) {
            request = new XMLHttpRequest();
            if(request.overrideMimeType) {
                request.overrideMimeType('text/xml');
            }
        } else if(window.ActiveXObject) {
            var versions =
            ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0',        'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
            for(var i=0; i<versions.length; i++) {
                try {
                    request = new ActiveXObject(versions[i]);
                    if(request) {
                        return request;
                    }
                } catch(e) {
                    //alert(e.message);
                }
            }
        }
        alert("1");
       
        if (!request) { // 异常Q创建对象实例失?br>            window.alert("不能创徏XMLHttpRequest对象实例.");
            return false;
        }
        return request;
    }

function ajaxpost(targetUrl,sendString,resultHandle){
   
    request = createXMLHttpRequest();

    request.onreadystatechange = resultHandle;

    request.open("post",targetUrl);   
   

    request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    request.setRequestHeader("Content-length", sendString.length);
    request.setRequestHeader("Connection","close");

    request.send(sendString);

}

function ajaxget(targetUrl,resultHandle){
   
    request = createXMLHttpRequest();

    request.onreadystatechange = resultHandle;

    request.open("get",targetUrl);   

    request.send(null);

}


//处理l果
function handle(){
if (request.readyState == 4) {
         if (request.status == 200) {
            //alert(request.responseText);
            var result = request.responseText;
            document.getElementById('welcome').style.display="";
            document.getElementById('user').style.display="";
            document.getElementById('loginform').style.display="none";
            document.getElementById('user').innerHTML = result;           
         } else {
            alert('There was a problem with the request.');
         }
      }

}




//调用
function check(){

var tartgeUrl="login.php";
var params ="username=" + encodeURI( document.getElementById("username").value ) +"&password=" + encodeURI( document.getElementById("password").value );
alert("start"+params);
ajaxpost(tartgeUrl,params,handle);
}
 


chenguo 2007-07-04 17:58 发表评论
]]>
DHTML应用开?/title><link>http://www.tkk7.com/cgogg/articles/127810.html</link><dc:creator>chenguo</dc:creator><author>chenguo</author><pubDate>Tue, 03 Jul 2007 04:38:00 GMT</pubDate><guid>http://www.tkk7.com/cgogg/articles/127810.html</guid><wfw:comment>http://www.tkk7.com/cgogg/comments/127810.html</wfw:comment><comments>http://www.tkk7.com/cgogg/articles/127810.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/cgogg/comments/commentRss/127810.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/cgogg/services/trackbacks/127810.html</trackback:ping><description><![CDATA[本文介绍了IE和Navigator两种览器对DHTML标准实现的差异,特别是如何编写Navigator中运行的DHTMLE序? <br> <br> <br>  DHTML(Dynamic HTML)是W3Cl织提出的一U新的规范,它对原有的HTML做了许多扩充Qƈl合JavascriptQ得静态的HTML面产生了许多动态效果, 例如菜单的展开和收P面元素的外观动态改变等。IE 4.0以上QNavigator 4.0以上的版本都支持q个标准。但是,不同的浏览器厂家对它都做了不同程度的扩充。以最行IE的和NSZQIE的实现更接近于W3C的方案,? NSQ说实话Q与W3C的方案差异很大,而且q没有完全实玎ͼ甚至可以说是另一套方案。笔者在初识DHTMLӞ按照书上讲的~写了几个小E序Q在IE? 一试就通,而在NS上可以说费尽了周折才逐渐扑ֈ解决Ҏ(gu)。由于市面上很少有讲qNS的DHTML实现Ҏ(gu)的书(大概NS׃的实CW合标准)Q而真? 的商业网站至应同时支持IE和NSq两U主要的览器,我愿意把我的一些心得写出来与大家共享,使大家不必再走我走过的弯路。对于二者的实现相同的部 分,本文作一略介l,(zhn)若有兴可参考有关书c或|上资源?<br> <br> <br>  DHTML实际上由三两部分l成QCSS(Cascade Style SheetQ联样式表)Q层(Layer)和Javascript? <br> <br> <br>  所谓CSSQ概念上cM于C++中的c,在类定义中指明元素的外观样式Q如字体Q颜Ԍ大小{等Q页面中的Q何一个HTML元素如被指定属于 q个c,p动拥有该cȝҎ(gu);q可以ؓ(f)某种HTML元素定义样式Q这样页面中的所有这U元素都有了同样的外观。如果将q样的样式定义存在一个单独的. css文g?pC++那样类定义存在 .h文g?Q再在页面中其包含q来Q则一个网站的所有页面就有了同样的外观。IE和NS对CSS的实现基本相同,在此׃再详l介l了?<br> <br> <br>  两者的差异主要体现在层的实C。所谓层Q就是页面上的一块区域,其中可以包含M的HTML元素Q通过改变层的属性,光的元素可以跟着? 玎ͼ消失Q更改,Ud{? 在IE中,层依?lt;DIV></DIV>?lt;SPAN></SPAN>来实玎ͼ两者基本相同,通常 <DIV>用于较大的层Q?lt;SPAN>用于较小的层Qƈ?lt;DIV>在实现的层后面加上一个回车换行,?lt; SPAN>不加。它的语法如?二者相?Q?<br> <br> <br>  <div id=layername style="style definition">Layer content</div> ? <br> <br> <br>  <div id=layername class="classname">Layer content</div> <br> <br> <br>  其中style definition是一l有分号隔开的样式定义,常用的有以下几种Q? <br> <br> <br>  positionQ其值可以ؓ(f)absolute和relativeQ所谓absolute(l对定位)Q就是层的内容不必按照出现的先后ơ序 在浏览器上依ơ排列,而是可以像素为单位定位到览器用户区域的L位置Q而relative(相对定位)则是层按照相?c)内容依次排列?<br> <br> <br>  leftQtopQwidthQheightQ指层的左上角坐标以?qing)它的宽度和高度? <br> <br> <br>  z-indexQ由于层可以被放|在面的Q何位|,当它与其它内定w合时Qz-index值大的显C在上面Q所有层的z-indexgؓ(f) 1。但是在NS中,所有的表单元素(文本框,列表框,按钮{?Q只要是可见的就无法被遮住,而无论z-index值是多少。因此在设计面Ӟ要注意不? 使动态出现或隐藏的元?例如弹出式菜?的位|上攄表单元素?<br> <br> <br>  VisibilityQ指明层是否可见Q通过在程序中动态改变这个|可以实现层的出现和消失,比如下拉菜单p依靠它来实现。它的三个候? gؓ(f)QinheritQ可见性与父元素的可见性相同;visibleQ可?在NS中是show)QhiddenQ不可见(在NS中是hide)?<br> <br> <br>  NS同样支持q两个标讎ͼ但是支持得很不好Q经常出C些莫名其妙的错误Q我惌可能是出于策略上的考虑Q而不见得是NS的品质量不好? NS引入了另两个标记Q?lt;layer>?lt;ilayer>Q?lt;layer>用于l对定位Q?lt; ilayer>用于相对定位Q因此在q两个标记的样式定义中没有position属性?<br> <br> <br>  两个览器对层的不同实现体现在以下几点:(x) <br> <br> <br>  1. 层的引用。在IE中,面上的每个可编E元?不仅是层Q还包括其它M指明了ID值的元素Q详见下?都是document.all集合的一;而在 NS中,面中每个层Q无论是用上面四个标C的哪个定义的Q也无论是绝Ҏ(gu)是相对定位,都是document.layers集合的一V因此,若想引用 名ؓ(f)layer1的层Q应以如下语法:(x) <br> <br> <br>  IEQdocument.all["layer1"]或document.all.layer1 <br> <br> <br>  NSQdocument.layers["layer1"]或document.layers.layer1 <br> <br> <br>  2. 层的坐标和大。在IE中,每个涉及(qing)层的外观的属性,如位|,大小Q颜色等Q都是层的style属性集合的以一,如层的左上角x坐标? document.all.layer1.style.pixelLeftQy坐标? document.all.layer1.style.pixelTopQ宽度ؓ(f) document.all.layer1.style.pixelWidthQ高度ؓ(f) document.all.layer1.style.pixelHeight。还有几l属性如scrollxxxQoffsetxxxQ? clientxxxQ其中xxx为LeftQTopQW(xu)idthQHeight Q分别描q层的滚动,位移Q客户区{属性,详见MSDN中关于坐标的描述。而在NS中,每个层都有一个clip属性集QxQyQwidthQheight 是这个集的集合元素?<br> <br> <br>  另外QIE中所有元素拥有同一个坐标系Q无论它位于层外或层内;在NS中,每个层都有一个独立的坐标pR? <br> <br> <br>  3. 层的内容。IE中的层包含innerHTML和outerHTML属?׃q描述层的外观Q所以它们不是style属性集的元素,而是层的属?Q其含义如下Q? <br> <br> <br>  innerHTMLQ层中的HTML代码Q但是不包括层的定义? <br> <br> <br>  outerHTMLQ层中的HTML代码Q且包括层的定义? <br> <br> <br>  改变q些属性值就可以改变层的内容Q如下语句改变层layer1的内容ؓ(f)加粗的字W串"layer1"Q? document.all.layer1.innerHTML=”<b>layer1</b>” Q而在NS中,每一个document.layers集合中的元素Q即一个层Q都NS被视Z个独立的H口Q有独立document属性,p Javascript中的document属性一P通过调用document.write函数Q可以动态改变层的内宏V上例在NS中应修改为:(x) <br> <br> <br>  document.layers.layer1.document.open(); <br> <br> <br>  doucment.layers.layer1.write("<div><b>layer1</b></div>"); <br> <br> <br>  document.layers.layer1.document.close; <br> <br> <br>  同样Q对于层中的其它可编E元素,例如图象Q其引用语法如下Q? document.layers.layer1.document.images[imgname]Q而如果该图象位于层的外面Q其语法应ؓ(f) document.images[imgname]Q而在IE中,无论图象位于层内或层外,其语法都是后者?<br> <br> <br>  Javascript是Netscape公司首先提出的一U客L(fng)~程的脚本语aQ随后有扩展到服务器端。它的语法和概念都类gC++Q但 是没有C++那样严格。IE同样支持客户端Javascript(微Yq推ZcM的,功能更强大的VbscriptQ但是NS却不支持)。两U浏览器? Javascript的基本实现是一L(fng)Q但是又都对它做了许多不同的扩展Q而在DHTML~程中,很多情况下都需要用到这些扩展。由于此时已l没有标? 可遵循,二者已l看不出有相同之处。例如,览器的客户区的宽度Q在IE中是document.body.clientWidthQ在NS中是 window.innerWidthQ再比如你想知道用户按浏览器的滚动条滚动了多像素,在IE中是document.body.scrollTopQ? 在NS中是window.pageYOffset。在q种情况下,你只能查阅二者的文档。IE的Javascript文档包含在MSDN中,也可以到微Y 的站点上单独下蝲。NS的Javascript文档可以? http://developer.netscape.com上下载,那里也能得到NS的DHTML文档?<br> <br> <br>  NS没有实现的功能? <br> <br> <br>  1.IE中,面中的M元素都是可编E的Q只要赋予它ID属性,其语法如下:(x) <br> <br> <br>  <div id=itemid>content</div>?lt;span id=itemid>content</span> <br> <br> <br>  而在NS中,除非元素位于层中Q否则无法对它编E? <br> <br> <br>  2.IE中增M元素的渐?Transition)和o(h)?Filter)效果QNS中没有? <br> <br> <br>  3.IE中支持客L(fng)的数据绑?Data bind)Q即面中的某个元素(例如表格中的一个格)可以与服务器端的数据库的某个字段l定Q在数据内容不变的情况下Q可以不必再ơ访问数据库而改变页面的形式(例如按某个字D重新排?。NS同样没有实现q种Ҏ(gu)? <br> <br> <br>  以上列D了二者的如此之多的差别,那我们如何编写跨览器的DHTML面呢?一U方法是~写两个独立的页面,而在入口文g中根据浏览器的不同而重定向C同的面Q如Q? <br> <br> <br>  <HTML><BODY> <br> <br> <br>  <Script Language="Javascript"> <br> <br> <br>  isNS=(navigator.appName=="Netscape"); <br> <br> <br>  if (isNS) <br> <br> <br>   window.location="ns.html"; <br> <br> <br>  else <br> <br> <br>   window.location="ie.html"; <br> <br> <br>  </Script> <br> <br> <br>  </BODY></HTML> <br> <br> <br>  q种Ҏ(gu)单,面整洁Q缺Ҏ(gu)有很大冗余,毕竟一个页面中E序是少量的Q大部分静态内容在两个览器中q没有区别,一旦静态的内容发生改变必须在两个页面中一h改,而且当包含DHTML的页面增多时Q每一个页面都需要三个页面来实现Q增大了l护的负担? <br> <br> <br>  另一U方法是在同一个页面中集成两个览器的代码。在每一个实现特定功能的函数中都Ҏ(gu)览器的不同分别写代码,如:(x) <br> <br> <br>  <HTML><BODY> <br> <br> <br>  <Script Language="Javascript"> <br> <br> <br>  isNS=(navigator.appName=="Netscape"); <br> <br> <br>  function fun1(){ <br> <br> <br>  if (isNS) <br> <br> <br>   //NS codes here <br> <br> <br>  else <br> <br> <br>   //IE codes here <br> <br> <br>  } <br> <br>  </Script> <br> <br>  </BODY></HTML> <br> <br>  对于HTML代码也不同的部分Q可以利用Javascript函数 document.writeln()来实玎ͼ例如对于层的定义Q可以如下实玎ͼ(x) <br> <br>  <Script Language="Javascript"> <br> <br>   if(isNS) <br> <br>   document.writeln("<layer id=\"layer1\" left=20 top=30 width=40 height=50 z-index=2>"); <br> <br>   else <br> <br>   document.writeln("<div id=\"layer1\" style=\"position:absolute;left:20;top:30;width:40;height:50;z-index:2\">"); <br> <br>  </Script> <br> <br>  Layer content here <br> <br>  <Script Language="Javascript"> <br> <br>   if(isNS) <br> <br>   document.writeln("</layer>"); <br> <br>   else <br> <br>   document.writeln("</div>"); <br> <br> <br>  </Script> <br> <br>  q种实现Ҏ(gu)l护单,~点是失M面~辑器所见即所得的Ҏ(gu)?因ؓ(f)只有到运行时才能层的定义写入浏览器Q在~辑阶段它们只是? JavascriptE序)Q调整层的坐标和大小都比较困难。在实际~程中可以先按一U浏览器的定义写Q待调整完毕后再它转成另一U定义。但ȝ来说Q? q种办法适合对HTML标准比较熟?zhn)的开发h员? <br><img src ="http://www.tkk7.com/cgogg/aggbug/127810.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/cgogg/" target="_blank">chenguo</a> 2007-07-03 12:38 <a href="http://www.tkk7.com/cgogg/articles/127810.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>下拉菜单全攻?JavaScript?/title><link>http://www.tkk7.com/cgogg/articles/127807.html</link><dc:creator>chenguo</dc:creator><author>chenguo</author><pubDate>Tue, 03 Jul 2007 04:29:00 GMT</pubDate><guid>http://www.tkk7.com/cgogg/articles/127807.html</guid><wfw:comment>http://www.tkk7.com/cgogg/comments/127807.html</wfw:comment><comments>http://www.tkk7.com/cgogg/articles/127807.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/cgogg/comments/commentRss/127807.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/cgogg/services/trackbacks/127807.html</trackback:ping><description><![CDATA[自适应分L率可扩展二层JS下拉菜单 <br> <br>序言Q? <br> <br>随着互联|的普及(qing)和网制作技术的发展Q越来越多的|友开始制作自q|站。做为网站最重要的部分—导航菜单也出现了各式各L(fng)设计和制作方法? 其中下拉式导航菜单已l成为多栏目大信息量|站的首选导航方式。那么,在下面我简单介l一下众多下拉菜单制作方法中完全使用JS自动生成?#8220;自适应分L 率可扩展二层JS下拉菜单”的工作原理和使用Ҏ(gu)? <br> <br>1?S下拉菜单原理 <br> <br>下拉菜单实际上就是在开始的时候显CZU或者说是主菜单Q图一Q。当触发条gQ例如:(x)鼠标UdC面时Q显C次U菜单(图二Q? <br> <br>图一 <br> <br> <br>图二 <br> <br> <br>那么如何实现q样的效果呢。其实很单。所有的下拉菜单都是通过囑ֱ的显隐来实现的。在文g下蝲的时候,其实主菜单和ơ菜单都以lŞ成或者说? 载到了客L(fng)也就是你的机器里。只是次U菜单被隐藏h。隐藏的Ҏ(gu)一般是使用javascript 配合css控制ơ菜单的图层的属性visibility为隐? <br>。所以在开始的使用你是看不见次U菜单的。当满触发条gQ例如:(x)鼠标UdC面)(j)Ӟ在用javascript来控制次U菜单显C。当在次满触发条gӞ例如Q鼠标移开Q,控制ơ菜单隐藏? <br> <br>我们现在讲的q个” 自适应分L率可扩展二层JS下拉菜单”可以自动适应览器分辨率的改变始l保持相对位|。可以方便的自己定制菜单昄内容?qing)连接页面。可以随意扩充主D和次D的栏目个数。可以自由改变连接和D表格的样式和外观{等? <br> <br>2?自适应分L率可扩展二层JS下拉菜单"js代码详解 <br> <br> <br>//--------------- d航条内容 ------------// <br>var mainLayer=new Array("蓝色理想","动意营?);//d航栏? <br> <br>//--------------- ơ导航条内容 ------------// <br>var subLayer0=new Array("论坛","文献"); //D栏目一下的ơ栏目 <br>var subLayerHttp0=new Array("#","#");’’;//d航栏目一下的ơ栏目q接地址 <br>var subLayer1=new Array("论坛","文献");//D栏目二的ơ栏目 <br>var subLayerHttp1=new Array("#","#");//d航栏目二的次U栏目连接地址 <br> <br> <br> <br>//--------------- d航条Table参数调整 ------------// <br>var mainTableTdWidth=100; //每个TD的宽度,调整d航内定w? <br>var mainTableBorder=0; //调整d航表D框宽? <br>var mainTableCellspacing=0; //调整d航表格Cellspacing <br>var mainTableCellpadding=1; //调整d航表格Cellpadding <br>var mainTableBgcolor="#000000"; //调整d航表D景色 <br>var mainTableBordercolor=""; //调整d航表格编框颜? <br>var mainTableBackgroundImg=""; //调整d航表D景图片url地址 <br>var hrefClassName="link" //调整url风格样式 <br>var mainTableTdBgcolor="B2CBCF"; //调整d航表格Td? <br> <br>//--------------- ơ导航条Table参数调整 ------------// <br>var subTableBorder=0; //调整ơ导航条表格Ҏ(gu)宽度 <br>var subTableCellspacing=0; //调整ơ导航条表格Cellspacing <br>var subTableCellpadding=1; //调整ơ导航条表格Cellpadding <br>var subTableBgcolor="#000000"; //调整ơ导航条表格背景? <br>var subTableBordercolor=""; //ơ导航条表格~框颜色 <br>var subTableBackgroundImg=""; //ơ导航条表格背景囄url地址 <br>var subTableTdBgcolor="B2CBCF"; //调整ơ导航表格Td? <br>var sbuTabbleTop=21; //ơ导航表g下微? <br>var sbuTabbleLeft=-1; //ơ导航表格左叛_? <br> <br>//--------------- pȝ参数*请勿调整 ------------// <br>var layerMax=mainLayer.length+10; <br>var layerName=”index” <br> <br>//--------------- 生成下拉菜单 ------------// <br>function createMainLayer(){ <br>document.write(" <table border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td> <div class="yjyczju" id="wall" onmouseout="layervib('visible','"+layerMax+"')" style="position: relative; left: 0px; top: 0px; width: 100%; z-index: 1;">"); <br>for(i=0;i<mainlayer.length;i++){><br>document.write("</mainlayer.length;i++){>"); <br>} <br>document.write(" <table background=""+mainTableBackgroundImg+"" bgcolor="#0000b0" border="1" bordercolor="#0000b0" cellpadding=""+mainTableCellpadding+"" cellspacing=""+mainTableCellpadding+"" width=""> <tbody> <tr> <td class=""+hrefClassName+"" onmouseover="layervib('visible','"+i+"')" bgcolor="#0000b0" width=""+mainTableTdWidth+""> <a href="http://www.6to23.com/s15/s15d1/s15d1d6/s15d1d6d5/s15d1d6d5d5/200291613567.htm#">"+mainLayer[i]+"</a></td> </tr> </tbody> </table> "); <br> <br>for(j=0;j<mainlayer.length;j++){><br>createSubLayer(j); <br>} <br>document.write("</mainlayer.length;j++){></div> </td> </tr> </tbody> </table> "); <br>} <br> <br> <br>//--------------- 生成每项下拉菜单内容 ------------// <br>function createSubLayer(num){ <br>var subLayerName= layerName +num; <br>var subLayerLeft=(mainTableTdWidth*num)+mainTableCellpadding+mainTableBorder; <br>var subLayerList=eval("subLayer"+num); <br>var subLayerHttpList=eval("subLayerHttp"+num); <br>document.write(" <div class="grvfwga" id=""+subLayerName+"" style="position: absolute; z-index: 2; height: 24px; visibility: hidden;" onmouseover="layervib('visible','"+num+"')" onmouseout="layervib('visible','"+layerMax+"')">"); <br>if(subLayerList.length!=0){ <br>document.write("<br>for(h=0;h<sublayerlist.length;h++){><br> <br>document.write("</sublayerlist.length;h++){>"); <br>} <br>document.write(" <table )="" background=""+subTableBackgroundImg+"" bgcolor="#00b00e" border="1" bordercolor="#00b00e" cellpadding=""+subTableCellpadding+"" cellspacing=""+subTableCellpadding+"" width="100"> <tbody> <tr> <td class="link" bgcolor="#00b00e" width="100%"> <a href="http://www.6to23.com/s15/s15d1/s15d1d6/s15d1d6d5/s15d1d6d5d5/%22+%20subLayerHttpList%20%5Bh%5D+%22" class="link">"+subLayerList[h]+"</a> </td> </tr> </tbody> </table> "); <br>} <br>document.write("</div> "); <br> <br>} <br> <br>//------------------------------ơ菜单显隐控?-------------------------// <br>function layervib(type,num){ <br>var H=type; <br>var temp=(H='visible'?'hidden':'visible') <br>for(var i=0;i<mainlayer.length;i++){><br>var E=eval('document.all.index'+i+'.style'); <br>var H=eval(i); <br>if(i==num){E.visibility=type}else{E.visibility=temp}; <br>} <br>} <br> <br>3?自适应分L率可扩展二层JS下拉菜单"js代码使用Ҏ(gu)? <br> <br>(1) 上面的代码存储为js_daohang.js.攑֜和调用的面同一个目录下? <br>(2) 在需要用的叉中在如下位置d<script language="javascript" src="http://www.6to23.com/s15/s15d1/s15d1d6/s15d1d6d5/s15d1d6d5d5/js_daohang.js"> <br> <br><html> <br><head> <br> <title>q_证券柜台pȝ...



Q?Q在需要显CZ拉菜单的地方使用

来生菜单。如下例。可以随意摆攑ֈ面的Q何位|?






 


(4)、如何添加新的主菜单?qing)次U菜单的栏目?
假设我们要在已有的栏目里新增加一?#8220;七色?#8221;栏目。下面有“论坛”?#8220;文献”两个ơ栏目。那么我么首先要在代码的如下部分d“七色?#8221;?

var mainLayer=new Array("蓝色理想","动意营?,”七色?#8221;);//d航栏?
0 1 2

然后在如下的位置d“论坛”?#8220;文献”栏目?qing)连接地址?

var subLayer0=new Array("论坛","文献"); //D栏目一下的ơ栏目
var subLayerHttp0=new Array("#","#");’’;//d航栏目一下的ơ栏目q接地址
var subLayer1=new Array("论坛","文献");//D栏目二的ơ栏目
var subLayerHttp1=new Array("#","#");//d航栏目二的次U栏目连接地址
var subLayer2=new Array("论坛","文献");//D栏目三的ơ栏目
var subLayerHttp2=new Array("#","#");//d航栏目三的次U栏目连接地址

注意Q蓝色部分是需要新d的部分。红色部分是要修改的部分。要和上面的~号一一对应?(5)、其他细节调整请参考代码详解部分?

4、附注及(qing)扩充?

代码中主要用的函数?qing)方法详解?
Document.write(“tmp”)在页面中写入tmp.
var subLayerHttp1=new Array();定义一个新的数lsubLayerHttp1.
For(I=0;I
var temp=(H=???:?)当H的值等于?的时候temp{于?。反之temp的值等于??

增强功能?
//--------------- pȝ参数*请勿调整 ------------//
var layerMax=mainLayer.length+10;
var layerName=”index”

可以讄layerName=其他字段以生成新的下拉菜单。ə面内共存两个下拉菜单?

如有M问题误pL。Jiangyf@paic.com.cn

全文完?


chenguo 2007-07-03 12:29 发表评论
]]>
JavaScript[对象.属性]集锦http://www.tkk7.com/cgogg/articles/127803.htmlchenguochenguoTue, 03 Jul 2007 04:15:00 GMThttp://www.tkk7.com/cgogg/articles/127803.htmlhttp://www.tkk7.com/cgogg/comments/127803.htmlhttp://www.tkk7.com/cgogg/articles/127803.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/127803.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/127803.htmlSCRIPT 标记

用于包含JavaScript代码.

语法

属?

LANGUAGE 定义脚本语言

SRC 定义一个URL用以指定?JSl尾的文?


windows对象


每个HTML文档的顶层对?

属?

frames[] 子桢数组.每个子桢数组按源文档中定义的序存放.

feames.length 子桢个数.

self 当前H口.

parent 父窗?当前H口是中一个子H口).

top 层H口(是所有可见窗口的父窗?.

status 览器状态窗口上的消?

defaultStatus 当status无效?出现在浏览器状态窗口上的缺省消?

name 内部?为由window.open()Ҏ(gu)打开的窗口定义的名字.


Ҏ(gu)

alert("message") 昄含有l定消息?JavaScript Alert"对话?

confirm("message") 昄含有l定消息?Confirm"对话?有一个OK按钮和一个Cancel按钮).如果用户单击OKq回true,否则q回false.

prompt("message") 昄一?prompt"对话?要求用户Ҏ(gu)昄消息l予相应输入.

open("URL","name") 打开一个新H口,l予一个指定的名字.

close() 关闭当前H口.


frame对象


它是整个览器窗口的子窗?除了status,defaultStatus,name属性外,它拥有window对象的全部属?


location对象


含有当前URL的信?

属?

href 整个URL字符?

protocol 含有URLW一部分的字W串,如http:

host 包含有URL中主机名:端口号部分的字符??/www.cenpok.net/server/

hostname 包含URL中主机名的字W串.如http://www.cenpok.net

port 包含URL中可能存在的端口号字W串.

pathname URL?/"以后的部?如~list/index.htm

hash "#"?CGI参数)之后的字W串.

search "?"?CGI参数)之后的字W串.


document对象

含有当前文档信息的对?

属?

title 当前文档标题,如果未定?则包?Untitled".

location 文档的全URL.

lastModified 含有文档最后修Ҏ(gu)?

referrer 调用者URL,即用h从哪个URL链接到当前页面的.

bgColor 背景?#xxxxxx)

fgColor 前景文本颜色.

linkColor 链接颜?

vlinkColor 讉Kq的链颜色.

alinkColor Ȁz链颜色(鼠标按住未放?.

forms[] 文档中form对象的数l?按定义次序存?

forms.length 文档中的form对象数目.

links[] 与文档中所有HREF铑֯应的数组对象,按次序定义存?

links.length 文档中HREF铄数目.

anchors[] ?...)数组,按次序定义存?

anchors.length 文档中锚的数?


Ҏ(gu)

write("string") 字W串H出l当前窗?(字符串可以含有HTML标记)

writeln("string") 与write()cM,在结追加回车符,只在预定格式文本?

...
?
...
)生效.

clear() 清当前窗?

close() 关闭当前H口.


form对象


属?/strong>

name

中的NAME属性的字符串?

method 中METHOD属性的cd?"0"="GET" ,"1"="POST" .

action 中ACTION属性的字符串?

target 表格数据提交的目?与标C相应属性一?

elements[index] elements属性包含form中的各个元素.

length 表格中的元素个数.


Ҏ(gu)

submit() 提交表格.

事g处理器onSubmit() 用户单击一个定义好的按钮提交form时运行的代码.


text和textarea对象

属?

name NAME属性的字符串?

value 域内容的字符串?

defaultValue 域内容的初始字符串?


Ҏ(gu)

focus() 讄对象输入焦点.

blur() 从对象上U走输入焦点.

select() 选定对象的输入区?


事g处理?/strong>

onFocus 当输入焦点进入时执行.

onBlur 当域失去焦点时执?

onSelect 当域中有部分文本被选定时执?

onChange 当域失去焦点且域值相对于onFocus执行有所改变时执?


chenguo 2007-07-03 12:15 发表评论
]]>
国外java面试http://www.tkk7.com/cgogg/articles/126808.htmlchenguochenguoThu, 28 Jun 2007 05:48:00 GMThttp://www.tkk7.com/cgogg/articles/126808.htmlhttp://www.tkk7.com/cgogg/comments/126808.htmlhttp://www.tkk7.com/cgogg/articles/126808.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/126808.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/126808.html
        以下链接都是一些洋人整理的常用Java面试题,有些{案很简单,需要读者在深度发掘Q有的答案则很详l。我觉得想从事Java领域的h应该认真学习(fn)一下,另外企业的招聘h员也可以参考里面的相关题目?br>        http://www.roseindia.net/interviewquestions/corejava.shtml
        http://java.sys-con.com/read/48839.htm
        http://java.sys-con.com/read/48839_1.htm
        http://java.sys-con.com/read/48839_2.htm
        http://www.allapplabs.com/interview_questions/java_interview_questions.htm




chenguo 2007-06-28 13:48 发表评论
]]>
java面试题及(qing){案Q基?22道,代码?9道)(j)http://www.tkk7.com/cgogg/articles/126782.htmlchenguochenguoThu, 28 Jun 2007 05:02:00 GMThttp://www.tkk7.com/cgogg/articles/126782.htmlhttp://www.tkk7.com/cgogg/comments/126782.htmlhttp://www.tkk7.com/cgogg/articles/126782.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/126782.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/126782.html

java面试题及(qing){案Q基?22道,代码?9道)(j)

 

 

JAVA相关基础知识
1、面向对象的特征有哪些方?
1.抽象Q?br>抽象是忽略一个主题中与当前目标无关的那些斚wQ以便更充分地注意与当前目标有关的方面。抽象ƈ不打了解全部问题,而只是选择其中的一部分Q暂时不用部分细节。抽象包括两个方面,一是过E抽象,二是数据抽象?br>2.l承Q?br>l承是一U联l类的层ơ模型,q且允许和鼓q的重用,它提供了一U明表q共性的Ҏ(gu)。对象的一个新cd以从现有的类中派生,q个q程UCؓ(f)cȝѝ新cȝ承了原始cȝҎ(gu),新类UCؓ(f)原始cȝzc(子类Q,而原始类UCؓ(f)新类的基c(父类Q。派生类可以从它的基c那里承方法和实例变量Qƈ且类可以修改或增加新的方法之更适合Ҏ(gu)的需要?br>3.装Q?br>装是把q程和数据包围v来,Ҏ(gu)据的讉K只能通过已定义的界面。面向对象计始于这个基本概念,即现实世界可以被描绘成一pd完全自治、封装的对象Q这些对象通过一个受保护的接口访问其他对象?br>4. 多态性:(x)
多态性是指允怸同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语ah灉|、抽象、行为共享、代码共享的优势Q很好的解决了应用程序函数同名问题?br>2、String是最基本的数据类型吗?
基本数据cd包括byte、int、char、long、float、double、boolean和short?br>java.lang.StringcLfinalcd的,因此不可以承这个类、不能修改这个类。ؓ(f)了提高效率节省空_(d)我们应该用StringBufferc?br>3、int ?Integer 有什么区?br>Java 提供两种不同的类型:(x)引用cd和原始类型(或内|类型)(j)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了装cR?br>原始cd装c?br>booleanBoolean
charCharacter
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
引用cd和原始类型的行ؓ(f)完全不同Qƈ且它们具有不同的语义。引用类型和原始cdh不同的特征和用法Q它们包括:(x)大小和速度问题Q这U类型以哪种cd的数据结构存储,当引用类型和原始cd用作某个cȝ实例数据时所指定的缺省倹{对象引用实例变量的~省gؓ(f) nullQ而原始类型实例变量的~省g它们的类型有兟?br>4、String 和StringBuffer的区?br>JAVAq_提供了两个类QString和StringBufferQ它们可以储存和操作字符Ԍ卛_含多个字W的字符数据。这个StringcL供了数g可改变的字符丌Ӏ而这个StringBuffercL供的字符串进行修攏V当你知道字W数据要改变的时候你可以用StringBuffer。典型地Q你可以使用StringBuffers来动态构造字W数据?br>5、运行时异常与一般异常有何异同?
异常表示E序q行q程中可能出现的非正常状态,q行时异常表C拟机的通常操作中可能遇到的异常Q是一U常见运行错误。java~译器要求方法必d明抛出可能发生的非运行时异常Q但是ƈ不要求必d明抛出未被捕L(fng)q行时异常?br>6、说出Servlet的生命周期,q说出Servlet和CGI的区别?br>Servlet被服务器实例化后Q容器运行其initҎ(gu)Q请求到达时q行其serviceҎ(gu)QserviceҎ(gu)自动zNq行与请求对应的doXXXҎ(gu)QdoGetQdoPostQ等Q当服务器决定将实例销毁的时候调用其destroyҎ(gu)?br>与cgi的区别在于servlet处于服务器进E中Q它通过多线E方式运行其serviceҎ(gu)Q一个实例可以服务于多个hQƈ且其实例一般不?x)销毁,而CGIҎ(gu)个请求都产生新的q程Q服务完成后销毁,所以效率上低于servlet?br>7、说出ArrayList,Vector, LinkedList的存储性能和特?br>ArrayList和Vector都是使用数组方式存储数据Q此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素Q但是插入元素要涉及(qing)数组元素Ud{内存操作,所以烦(ch)引数据快而插入数据慢QVector׃使用了synchronizedҎ(gu)Q线E安全)(j)Q通常性能上较ArrayList差,而LinkedList使用双向链表实现存储Q按序号索引数据需要进行前向或后向遍历Q但是插入数据时只需要记录本的前后即可,所以插入速度较快?br>8、EJB是基于哪些技术实现的Qƈ说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别?br>EJB包括Session Bean、Entity Bean、Message Driven BeanQ基于JNDI、RMI、JAT{技术实现?br>SessionBean在J2EE应用E序中被用来完成一些服务器端的业务操作Q例如访问数据库、调用其他EJBlg。EntityBean被用来代表应用系l中用到的数据?br>对于客户机,SessionBean是一U非持久性对象,它实现某些在服务器上q行的业务逻辑?br>对于客户机,EntityBean是一U持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用E序实现的实体?br>Session Bean q可以再l分?Stateful Session Bean ?Stateless Session Bean Q这两种?Session Bean都可以将pȝ逻辑攑֜ method之中执行Q不同的?Stateful Session Bean 可以记录呼叫者的状态,因此通常来说Q一个用者会(x)有一个相对应?Stateful Session Bean 的实体。Stateless Session Bean 虽然也是逻辑lgQ但是他却不负责记录使用者状态,也就是说当用者呼?Stateless Session Bean 的时候,EJB Container q不?x)找ȝ定?Stateless Session Bean 的实体来执行q个 method。换a之,很可能数个用者在执行某个 Stateless Session Bean ?methods Ӟ?x)是同一?Bean ?Instance 在执行。从内存斚w来看Q?Stateful Session Bean ?Stateless Session Bean 比较Q?Stateful Session Bean ?x)消?J2EE Server 较多的内存,然? Stateful Session Bean 的优势却在于他可以维持用者的状态?br>9、Collection ?Collections的区别?
  Collection是集合类的上U接口,l承与他的接口主要有Set 和List.
Collections是针寚w合类的一个帮助类Q他提供一pd静态方法实现对各种集合的搜索、排序、线E安全化{操作?br>10?amp;?amp;&的区别?
&是位q算W,表示按位与运,&&是逻辑q算W,表示逻辑与(andQ?br>11、HashMap和Hashtable的区别?
HashMap是Hashtable的轻量实现Q非U程安全的实玎ͼ(j)Q他们都完成了Map接口Q主要区别在于HashMap允许I(nullQ键|keyQ?׃非线E安全,效率上可能高于Hashtable?br>HashMap允许null作ؓ(f)一个entry的key或者valueQ而Hashtable不允许?br>HashMap把Hashtable的containsҎ(gu)L了,Ҏ(gu)containsvalue和containsKey。因为containsҎ(gu)Ҏ(gu)让h引v误解?
Hashtablel承自Dictionaryc,而HashMap是Java1.2引进的Map interface的一个实现?br>最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是Q在多个U程讉KHashtableӞ不需要自׃ؓ(f)它的Ҏ(gu)实现同步Q而HashMap 必Mؓ(f)之提供外同步?
Hashtable和HashMap采用的hash/rehash法都大概一P所以性能不会(x)有很大的差异?br>12、final, finally, finalize的区别?
  final 用于声明属性,Ҏ(gu)和类Q分别表C属性不可变Q方法不可覆盖,cM可ѝ?br>finally是异常处理语句结构的一部分Q表CL执行?br>finalize是Objectcȝ一个方法,在垃圾收集器执行的时候会(x)调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回Ӟ例如关闭文g{?br>13、sleep() ?wait() 有什么区?
sleep是线E类QThreadQ的Ҏ(gu)Q导致此U程暂停执行指定旉Q给执行Z(x)l其他线E,但是监控状态依然保持,到时后会(x)自动恢复。调用sleep不会(x)释放对象锁?br>wait是ObjectcȝҎ(gu)Q对此对象调用waitҎ(gu)D本线E放弃对象锁Q进入等待此对象的等待锁定池Q只有针Ҏ(gu)对象发出notifyҎ(gu)Q或notifyAllQ后本线E才q入对象锁定池准备获得对象锁q入q行状态?br>14、Overload和Override的区别。Overloaded的方法是否可以改变返回值的cd?
Ҏ(gu)的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父cM子类之间多态性的一U表玎ͼ重蝲Overloading是一个类中多态性的一U表现。如果在子类中定义某Ҏ(gu)与其父类有相同的名称和参敎ͼ我们说该Ҏ(gu)被重? (Overriding)。子cȝ对象使用q个Ҏ(gu)Ӟ调用子cM的定义,对它而言Q父cM的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参C数或有不同的参数cdQ则UCؓ(f)Ҏ(gu)的重?Overloading)。Overloaded的方法是可以改变q回值的cd?br>15、error和exception有什么区?
error 表示恢复不是不可能但很困隄情况下的一U严重问题。比如说内存溢出。不可能指望E序能处理这L(fng)情况?br>exception 表示一U设计或实现问题。也是_(d)它表C如果程序运行正常,从不?x)发生的情况?/p>

 

16、同步和异步有何异同Q在什么情况下分别使用他们QD例说明?br>如果数据在U程间共享。例如正在写的数据以后可能被另一个线E读刎ͼ或者正在读的数据可能已l被另一个线E写q了Q那么这些数据就是共享数据,必须q行同步存取?br>当应用程序在对象上调用了一个需要花费很长时间来执行的方法,q且不希望让E序{待Ҏ(gu)的返回时Q就应该使用异步~程Q在很多情况下采用异步途径往往更有效率?br>17、abstract class和interface有什么区?
声明Ҏ(gu)的存在而不d现它的类被叫做抽象类Qabstract classQ,它用于要创徏一个体现某些基本行为的c,qؓ(f)该类声明Ҏ(gu)Q但不能在该cM实现该类的情c(din)不能创建abstract cȝ实例。然而可以创Z个变量,其类型是一个抽象类Qƈ让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract cȝ子类为它们父cM的所有抽象方法提供实玎ͼ否则它们也是抽象cMؓ(f)。取而代之,在子cM实现该方法。知道其行ؓ(f)的其它类可以在类中实现这些方法?br>接口QinterfaceQ是抽象cȝ变体。在接口中,所有方法都是抽象的。多l承性可通过实现q样的接口而获得。接口中的所有方法都是抽象的Q没有一个有E序体。接口只可以定义static final成员变量。接口的实现与子cȝ|除了该实现类不能从接口定义中l承行ؓ(f)。当cd现特D接口时Q它定义Q即程序体l予Q所有这U接口的Ҏ(gu)。然后,它可以在实现了该接口的类的Q何对象上调用接口的方法。由于有抽象c,它允怋用接口名作ؓ(f)引用变量的类型。通常的动态联~将生效。引用可以{换到接口cd或从接口cd转换Qinstanceof q算W可以用来决定某对象的类是否实现了接口?br>18、heap和stack有什么区别?br>栈是一U线形集合,其添加和删除元素的操作应在同一D完成。栈按照后进先出的方式进行处理?br>堆是栈的一个组成元?br>19、forward 和redirect的区?br>forward是服务器h资源Q服务器直接讉K目标地址的URLQ把那个URL的响应内容读取过来,然后把这些内容再发给览器,览器根本不知道服务器发送的内容是从哪儿来的Q所以它的地址栏中q是原来的地址?br>redirect是服务端根据逻辑,发送一个状态码,告诉览器重新去h那个地址Q一般来说浏览器?x)用刚才h的所有参数重新请求,所以session,request参数都可以获取?br>20、EJB与JAVA BEAN的区别?
Java Bean 是可复用的组Ӟ对Java Beanq没有严格的规范Q理ZԌM一个Javac都可以是一个Bean。但通常情况下,׃Java Bean是被容器所创徏Q如TomcatQ的Q所以Java Bean应具有一个无参的构造器Q另外,通常Java Beanq要实现Serializable接口用于实现Bean的持久性。Java Bean实际上相当于微YCOM模型中的本地q程内COMlgQ它是不能被跨进E访问的。Enterprise Java Bean 相当于DCOMQ即分布式组件。它是基于Java的远E方法调用(RMIQ技术的Q所以EJB可以被远E访问(跨进E、跨计算机)(j)。但EJB必须被布|在诸如Webspere、WebLogicq样的容器中QEJB客户从不直接讉K真正的EJBlgQ而是通过其容器访问。EJB容器是EJBlg的代理,EJBlg由容器所创徏和管理。客户通过容器来访问真正的EJBlg?br>21、Static Nested Class ?Inner Class的不同?
Static Nested Class是被声明为静态(staticQ的内部c,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部cd例化后才能实例化?br>22、JSP中动态INCLUDE与静态INCLUDE的区别?
动态INCLUDE用jsp:include动作实现 <jsp:include page="included.jsp" flush="true" />它L?x)检查所含文件中的变化,适合用于包含动态页面,q且可以带参数?br>静态INCLUDE用include伪码实现,定不?x)检查所含文件的变化Q适用于包含静态页?lt;%@ include file="included.htm" %>
23、什么时候用assert?
assertion(断言)在Y件开发中是一U常用的调试方式Q很多开发语a中都支持q种机制。在实现中,assertion是在程序中的一条语句,它对一个boolean表达式进行检查,一个正程序必M证这个boolean表达式的gؓ(f)trueQ如果该gؓ(f)falseQ说明程序已l处于不正确的状态下Q系l将l出警告或退出。一般来_(d)assertion用于保证E序最基本、关键的正确性。assertion(g)查通常在开发和试时开启。ؓ(f)了提高性能Q在软g发布后,assertion(g)查通常是关闭的?br>24、GC是什? Z么要有GC?
  GC是垃圾收集的意思(Gabage CollectionQ?内存处理是编Eh员容易出现问题的地方Q忘记或者错误的内存回收?x)导致程序或pȝ的不E_甚至崩溃QJava提供的GC功能可以自动监测对象是否过作用域从而达到自动回收内存的目的QJava语言没有提供释放已分配内存的昄操作Ҏ(gu)?
25、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
short s1 = 1; s1 = s1 + 1; Qs1+1q算l果是int型,需要强制{换类型)(j)
short s1 = 1; s1 += 1;Q可以正编译)(j)
26、Math.round(11.5){於多少? Math.round(-11.5){於多少?
Math.round(11.5)==12
Math.round(-11.5)==-11
roundҎ(gu)q回与参数最接近的长整数Q参数加1/2后求其floor.
27、String s = new String("xyz");创徏了几个String Object?
两个
28、设?个线E,其中两个U程每次对j增加1Q另外两个线E对j每次减少1。写出程序?br>以下E序使用内部cd现线E,对j增减的时候没有考虑序问题?br>public class ThreadTest1{
private int j;
public static void main(String args[]){
ThreadTest1 tt=new ThreadTest1();
Inc inc=tt.new Inc();
Dec dec=tt.new Dec();
for(int i=0;i<2;i++){
Thread t=new Thread(inc);
t.start();
t=new Thread(dec);
t.start();
}
}
private synchronized void inc(){
j++;
System.out.println(Thread.currentThread().getName()+"-inc:"+j);
}
private synchronized void dec(){
j--;
System.out.println(Thread.currentThread().getName()+"-dec:"+j);
}
class Inc implements Runnable{
public void run(){
for(int i=0;i<100;i++){
inc();
}
}
}
class Dec implements Runnable{
public void run(){
for(int i=0;i<100;i++){
dec();
}
}
}
}
29、Java有没有goto?
java中的保留字,现在没有在java中用?br>30、启动一个线E是用run()q是start()?
启动一个线E是调用start()Ҏ(gu)QɾU程所代表的虚拟处理机处于可运行状态,q意味着它可以由JVM调度q执行。这q不意味着U程׃(x)立即q行。run()Ҏ(gu)可以产生必须退出的标志来停止一个线E?/p>

31、EJB包括QSessionBean,EntityBeanQ说Z们的生命周期Q及(qing)如何理事务的?
SessionBeanQStateless Session Bean 的生命周期是由容器决定的Q当客户机发求要建立一个Bean的实例时QEJB容器不一定要创徏一个新的Bean的实例供客户用,而是随便找一个现有的实例提供l客h。当客户机第一ơ调用一个Stateful Session Bean Ӟ容器必须立即在服务器中创Z个新的Bean实例Qƈ兌到客h上,以后此客h调用Stateful Session Bean 的方法时容器?x)把调用分派C此客h相关联的Bean实例?br>EntityBeanQEntity Beans能存?gu)zȝ对较长的旉Qƈ且状态是持箋的。只要数据库中的数据存在QEntity beans׃直存?gu)zR而不是按照应用程序或者服务进E来说的。即使EJB容器崩溃了,Entity beans也是存活的。Entity Beans生命周期能够被容器或?Beans自己理?br>EJB通过以下技术管理实务:(x)对象理l织QOMGQ的对象实务服务QOTSQ,Sun Microsystems的Transaction ServiceQJTSQ、Java Transaction APIQJTAQ,开发组QX/OpenQ的XA接口?br>32、应用服务器有那些?
BEA WebLogic ServerQIBM WebSphere Application ServerQOracle9i Application ServerQjBossQTomcat
33、给我一个你最常见到的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
34、接口是否可l承接口? 抽象cL否可实现(implements)接口? 抽象cL否可l承实体c?concrete class)?
接口可以l承接口。抽象类可以实现(implements)接口Q抽象类是否可承实体类Q但前提是实体类必须有明的构造函数?br>35、List, Set, Map是否l承自Collection接口?
ListQSet是,Map不是
36、说出数据连接池的工作机制是什?
J2EE服务器启动时?x)徏立一定数量的池连接,q一直维持不于此数目的池连接。客L(fng)E序需要连接时Q池驱动E序?x)返回一个未使用的池q接q将其表Cؓ(f)忙。如果当前没有空闲连接,池驱动程序就新徏一定数量的q接Q新接的数量有配|参数决定。当使用的池q接调用完成后,池驱动程序将此连接表Cؓ(f)I闲Q其他调用就可以使用q个q接?br>37、abstract的method是否可同时是static,是否可同时是nativeQ是否可同时是synchronized?
都不?br>38、数l有没有length()q个Ҏ(gu)? String有没有length()q个Ҏ(gu)Q?br>数组没有length()q个Ҏ(gu)Q有length的属性。String有有length()q个Ҏ(gu)?br>39、Set里的元素是不能重复的Q那么用什么方法来区分重复与否? 是用==q是equals()? 它们有何区别?
Set里的元素是不能重复的Q那么用iterator()Ҏ(gu)来区分重复与否。equals()是判M个Set是否相等?br>equals()?=Ҏ(gu)军_引用值是否指向同一对象equals()在类中被覆盖Qؓ(f)的是当两个分ȝ对象的内容和cd盔R的话Q返回真倹{?br>40、构造器Constructor是否可被override?
构造器Constructor不能被承,因此不能重写OverridingQ但可以被重载Overloading?br>41、是否可以承Stringc?
StringcLfinalcL不可以ѝ?br>42、swtich是否能作用在byte上,是否能作用在long上,是否能作用在String?
switchQexpr1Q中Qexpr1是一个整数表辑ּ。因此传递给 switch ?case 语句的参数应该是 int?short?char 或?byte。long,string 都不能作用于swtich?br>43、try {}里有一个return语句Q那么紧跟在q个try后的finally {}里的code?x)不会(x)被执行Q什么时候被执行Q在return前还是后?
?x)执行,在return前执行?br>44、编E题: 用最有效率的Ҏ(gu)出2乘以8{於?
2 << 3
45、两个对象值相?x.equals(y) == true)Q但却可有不同的hash codeQ这句话对不?
不对Q有相同的hash code?br>
46、当一个对象被当作参数传递到一个方法后Q此Ҏ(gu)可改变这个对象的属性,q可q回变化后的l果Q那么这里到底是g递还是引用传?
是g递。Java ~程语言只有g递参数。当一个对象实例作Z个参数被传递到Ҏ(gu)中时Q参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变Q但对象的引用是永远不会(x)改变的?br>47、当一个线E进入一个对象的一个synchronizedҎ(gu)后,其它U程是否可进入此对象的其它方?
不能Q一个对象的一个synchronizedҎ(gu)只能׃个线E访问?br>48、编E题: 写一个Singleton出来?br>Singleton模式主要作用是保证在Java应用E序中,一个类Class只有一个实例存在?br>一般Singleton模式通常有几U种形式:
W一UŞ? 定义一个类Q它的构造函Cؓ(f)private的,它有一个static的private的该cd量,在类初始化时实例话,通过一个public的getInstanceҎ(gu)获取对它的引?l而调用其中的Ҏ(gu)?br>public class Singleton {
private Singleton(){}
   //在自己内部定义自׃个实例,是不是很奇怪?
//注意q是private 只供内部调用
   private static Singleton instance = new Singleton();
   //q里提供了一个供外部讉K本class的静态方法,可以直接讉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只是第一ơ     
  //使用时生成实例,提高了效率!
  if (instance==null)
    instanceQnew Singleton();
return instance;   }
}
其他形式:
定义一个类Q它的构造函Cؓ(f)private的,所有方法ؓ(f)static的?br>一般认为第一UŞ式要更加安全?
49、Java的接口和C++的虚cȝ相同和不同处?br>׃Java不支持多l承Q而有可能某个cL对象要用分别在几个cL对象里面的方法或属性,现有的单l承机制׃能满求。与l承相比Q接口有更高的灵zL,因ؓ(f)接口中没有Q何实C码。当一个类实现了接口以后,该类要实现接口里面所有的Ҏ(gu)和属性,q且接口里面的属性在默认状态下面都是public static,所有方法默认情况下是public.一个类可以实现多个接口?br>50、Java中的异常处理机制的简单原理和应用?br>当JAVAE序q反了JAVA的语义规则时QJAVA虚拟机就?x)将发生的错误表CZؓ(f)一个异常。违反语义规则包?U情c(din)一U是JAVAcd内置的语义检查。例如数l下标越??x)引发IndexOutOfBoundsException;讉Knull的对象时?x)引发NullPointerException。另一U情况就是JAVA允许E序员扩展这U语义检查,E序员可以创q异常Qƈ自由选择在何时用throw关键字引发异常。所有的异常都是java.lang.Thowable的子cR?br>51、垃圑֛收的优点和原理。ƈ考虑2U回收机制?br>Java语言中一个显著的特点是引入了垃圑֛收机Ӟ使c++E序员最头疼的内存管理的问题q刃而解Q它使得JavaE序员在~写E序的时候不再需要考虑内存理。由于有个垃圑֛收机ӞJava中的对象不再?#8220;作用?#8221;的概念,只有对象的引用才?#8220;作用?#8221;。垃圑֛收可以有效的防止内存泄露Q有效的使用可以使用的内存。垃圑֛收器通常是作Z个单独的低别的U程q行Q不可预知的情况下对内存堆中已经M的或者长旉没有使用的对象进行清楚和回收Q程序员不能实时的调用垃圑֛收器Ҏ(gu)个对象或所有对象进行垃圑֛收。回收机制有分代复制垃圾回收和标记垃圑֛Ӟ增量垃圾回收?br>52、请说出你所知道的线E同步的Ҏ(gu)?br>wait():使一个线E处于等待状态,q且释放所持有的对象的lock?br>sleep():使一个正在运行的U程处于睡眠状态,是一个静态方法,调用此方法要捕捉InterruptedException异常?br>notify():唤醒一个处于等待状态的U程Q注意的是在调用此方法的时候,q不能确切的唤醒某一个等待状态的U程Q而是由JVM定唤醒哪个U程Q而且不是按优先?br>Allnotity():唤醒所有处入等待状态的U程Q注意ƈ不是l所有唤醒线E一个对象的锁,而是让它们竞争?br>53、你所知道的集合类都有哪些Q主要方法?
最常用的集合类? List ?Map?List 的具体实现包?ArrayList ?VectorQ它们是可变大小的列表,比较适合构徏、存储和操作Mcd对象的元素列表? List 适用于按数值烦(ch)引访问元素的情Ş?
Map 提供了一个更通用的元素存储方法?Map 集合cȝ于存储元素对Q称?#8220;?#8221;?#8220;?#8221;Q,其中每个键映到一个倹{?br>54、描qC下JVM加蝲class文g的原理机?
JVM中类的装载是由ClassLoader和它的子cL实现?Java ClassLoader 是一个重要的Javaq行时系l组件。它负责在运行时查找和装入类文g的类?br>55、char型变量中能不能存贮一个中文汉?Z?
能够定义成ؓ(f)一个中文的Q因为java中以unicode~码Q一个char?6个字节,所以放一个中文是没问题的
56、多U程有几U实现方?都是什?同步有几U实现方?都是什?
多线E有两种实现Ҏ(gu)Q分别是l承ThreadcM实现Runnable接口
同步的实现方面有两种Q分别是synchronized,wait与notify
57、JSP的内|对象及(qing)Ҏ(gu)?br>request表示HttpServletRequest对象。它包含了有x览器h的信息,q且提供了几个用于获取cookie, header, 和session数据的有用的Ҏ(gu)?
response表示HttpServletResponse对象Qƈ提供了几个用于设|送回 览器的响应的方法(如cookies,头信息等Q?
out对象是javax.jsp.JspWriter的一个实例,q提供了几个Ҏ(gu)使你能用于向览器回送输出结果?
pageContext表示一个javax.servlet.jsp.PageContext对象。它是用于方便存取各U范围的名字I间、servlet相关的对象的APIQƈ且包装了通用的servlet相关功能的方法?
session表示一个请求的javax.servlet.http.HttpSession对象。Session可以存贮用户的状态信?
applicaton 表示一个javax.servle.ServletContext对象。这有助于查找有关servlet引擎和servlet环境的信?
config表示一个javax.servlet.ServletConfig对象。该对象用于存取servlet实例的初始化参数?
page表示从该面产生的一个servlet实例
58、线E的基本概念、线E的基本状态以?qing)状态之间的关系
U程指在E序执行q程中,能够执行E序代码的一个执行单位,每个E序臛_都有一个线E,也就是程序本w?br>Java中的U程有四U状态分别是Q运行、就l、挂赗结束?
59、JSP的常用指?br><%@page language=”java” contenType=”text/html;charset=gb2312” session=”true” buffer=”64kb” autoFlush=”true” isThreadSafe=”true” info=”text” errorPage=”error.jsp” isErrorPage=”true” isELIgnored=”true” pageEncoding=”gb2312” import=”java.sql.*”%>
isErrorPage(是否能用Exception对象)QisELIgnored(是否忽略表达?
<%@include file=”filename”%>
<%@taglib prefix=”c”uri=”http://……”%>
60、什么情况下调用doGet()和doPost()Q?br>Jsp面中的form标签里的method属性ؓ(f)get时调用doGet()Qؓ(f)post时调用doPost()?/p>

61、servlet的生命周?br>web容器加蝲servletQ生命周期开始。通过调用servlet的init()Ҏ(gu)q行servlet的初始化。通过调用service()Ҏ(gu)实现Q根据请求的不同调用不同的do***()Ҏ(gu)。结束服务,web容器调用servlet的destroy()Ҏ(gu)?br>62、如何现实servlet的单U程模式
<%@ page isThreadSafe=”false”%>
63、页面间对象传递的Ҏ(gu)
requestQsessionQapplicationQcookie{?br>64、JSP和Servlet有哪些相同点和不同点Q他们之间的联系是什么?
JSP是Servlet技术的扩展Q本质上是Servlet的简易方式,更强调应用的外表表达。JSP~译后是"cservlet"。Servlet和JSP最主要的不同点在于QServlet的应用逻辑是在Java文g中,q且完全从表C层中的HTML里分d来。而JSP的情冉|Java和HTML可以l合成一个扩展名?jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑?br>65、四U会(x)话跟t技?br>?x)话作用域ServletsJSP 面描述
page否是代表与一个页面相关的对象和属性。一个页面由一个编译好?Java servlet c(可以带有M?include 指o(h)Q但是没? include 动作Q表C。这既包?servlet 又包括被~译?servlet ?JSP 面
request是是代表?Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨多个页面,涉及(qing)多个 Web lgQ由?forward 指o(h)?include 动作的关p)(j)
session是是代表与用于某?Web 客户机的一个用户体验相关的对象和属性。一?Web ?x)话可以也经怼(x)跨越多个客户?br>application是是代表与整?Web 应用E序相关的对象和属性。这实质上是跨越整个 Web 应用E序Q包括多个页面、请求和?x)话的一个全局作用?br>66、Request对象的主要方法:(x)
setAttribute(String name,Object)Q设|名字ؓ(f)name的request的参数?br>getAttribute(String name)Q返回由name指定的属性?br>getAttributeNames()Q返回request对象所有属性的名字集合Q结果是一个枚丄实例
getCookies()Q返回客L(fng)的所有Cookie对象Q结果是一个Cookie数组
getCharacterEncoding()Q返回请求中的字W编码方?br>getContentLength()Q返回请求的Body的长?br>getHeader(String name)Q获得HTTP协议定义的文件头信息
getHeaders(String name)Q返回指定名字的request Header的所有|l果是一个枚丄实例
getHeaderNames()Q返回所以request Header的名字,l果是一个枚丄实例
getInputStream()Q返回请求的输入,用于获得h中的数据
getMethod()Q获得客L(fng)向服务器端传送数据的Ҏ(gu)
getParameter(String name)Q获得客L(fng)传送给服务器端的有name指定的参数?br>getParameterNames()Q获得客L(fng)传送给服务器端的所有参数的名字Q结果是一个枚丄实例
getParameterValues(String name)Q获得有name指定的参数的所有?br>getProtocol()Q获取客L(fng)向服务器端传送数据所依据的协议名U?br>getQueryString()Q获得查询字W串
getRequestURI()Q获取发求字W串的客L(fng)地址
getRemoteAddr()Q获取客L(fng)的IP地址
getRemoteHost()Q获取客L(fng)的名?br>getSession([Boolean create])Q返回和h相关Session
getServerName()Q获取服务器的名?br>getServletPath()Q获取客L(fng)所h的脚本文件的路径
getServerPort()Q获取服务器的端口号
removeAttribute(String name)Q删除请求中的一个属?br>67、J2EE是技术还是^台还是框Ӟ
J2EE本n是一个标准,一个ؓ(f)企业分布式应用的开发提供的标准q_?br>J2EE也是一个框Ӟ包括JDBC、JNDI、RMI、JMS、EJB、JTA{技术?br>68、我们在web应用开发过E中l常遇到输出某种~码的字W,如iso8859-1{,如何输出一个某U编码的字符Ԍ
Public String translate (String str) {
String tempStr = "";
try {
tempStr = new String(str.getBytes("ISO-8859-1"), "GBK");
tempStr = tempStr.trim();
}
catch (Exception e) {
System.err.println(e.getMessage());
}
return tempStr;
}
69、简q逻辑操作(&,|,^)与条件操?&&,||)的区别?br>区别主要{两点:(x)a.条g操作只能操作布尔型的,而逻辑操作不仅可以操作布尔?而且可以操作数值型
b.逻辑操作不会(x)产生短\
70、XML文档定义有几UŞ式?它们之间有何本质区别Q解析XML文档有哪几种方式Q?
a: 两种形式 dtd schemaQb: 本质区别:schema本n是xml的,可以被XML解析器解?q也是从DTD上发展schema的根本目?Qc:有DOM,SAX,STAX{?
DOM:处理大型文g时其性能下降的非常厉実뀂这个问题是由DOM的树(wi)l构所造成的,q种l构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随?br>SAX:不现于DOM,SAX是事仉动型的XML解析方式。它序dXML文gQ不需要一ơ全部装载整个文件。当遇到像文件开_(d)文档l束Q或者标{ּ头与标签l束Ӟ它会(x)触发一个事Ӟ用户通过在其回调事g中写入处理代码来处理XML文gQ适合对XML的顺序访?
STAX:Streaming API for XML (StAX)
71、简qsynchronized和java.util.concurrent.locks.Lock的异? Q?br>主要相同点:(x)Lock能完成synchronized所实现的所有功?br>主要不同点:(x)Lock有比synchronized更精的U程语义和更好的性能。synchronized?x)自动释NQ而Lock一定要求程序员手工释放Qƈ且必dfinally从句中释放?br>72、EJB的角色和三个对象
一个完整的ZEJB的分布式计算l构由六个角色组成,q六个角色可以由不同的开发商提供Q每个角色所作的工作必须遵@Sun公司提供的EJB规范Q以保证彼此之间的兼Ҏ(gu)。这六个角色分别是EJBlg开发者(Enterprise Bean ProviderQ?、应用组合者(Application AssemblerQ、部|者(DeployerQ、EJB 服务器提供者(EJB Server ProviderQ、EJB 容器提供者(EJB Container ProviderQ、系l管理员QSystem AdministratorQ?br>三个对象是RemoteQLocalQ接口、HomeQLocalHomeQ接口,Beanc?br>73、EJB容器提供的服?br>主要提供声明周期理、代码生、持l性管理、安全、事务管理、锁和ƈ发行理{服务?br>74、EJB规范规定EJB中禁止的操作有哪些?
1.不能操作U程和线EAPI(U程API指非U程对象的方法如notify,wait{?Q?.不能操作awtQ?.不能实现服务器功能,4.不能寚w态属生存取,5.不能使用IO操作直接存取文gpȝQ?.不能加蝲本地?Q?.不能this作ؓ(f)变量和返回,8.不能循环调用?br>75、remote接口和home接口主要作用
remote接口定义了业务方法,用于EJB客户端调用业务方法?br>home接口是EJB工厂用于创徏和移除查找EJB实例

76、bean 实例的生命周?br>对于Stateless Session Bean、Entity Bean、Message Driven Bean一般存在缓冲池理Q而对于Entity Bean和Statefull Session Bean存在Cache理Q通常包含创徏实例Q设|上下文、创建EJB ObjectQcreateQ、业务方法调用、remove{过E,对于存在~冲池管理的BeanQ在create之后实例q不从内存清除,而是采用~冲池调度机制不断重用实例,而对于存在Cache理的Bean则通过ȀzdLzL制保持Bean的状态ƈ限制内存中实例数量?br>77、EJB的激zL?br>以Stateful Session Bean ZQ其Cache大小军_了内存中可以同时存在的Bean实例的数量,Ҏ(gu)MRU或NRU法Q实例在ȀzdLzȝ态之间迁U,ȀzL制是当客L(fng)调用某个EJB实例业务Ҏ(gu)Ӟ如果对应EJB Object发现自己没有l定对应的Bean实例则从其去ȀzBean存储中(通过序列化机制存储实例)(j)回复Q激z)(j)此实例。状态变q前?x)调用对应的ejbActive和ejbPassivateҎ(gu)?br>78、EJB的几U类?br>?x)话QSessionQBean Q实体(EntityQBean 消息驱动的(Message DrivenQBean
?x)话Bean又可分ؓ(f)有状态(StatefulQ和无状态(StatelessQ两U?br>实体Bean可分为Bean理的持l性(BMPQ和容器理的持l性(CMPQ两U?br>79、客服端调用EJB对象的几个基本步?br>讄JNDI服务工厂以及(qing)JNDI服务地址pȝ属性,查找Home接口Q从Home接口调用CreateҎ(gu)创徏Remote接口Q通过Remote接口调用其业务方法?br>80、如何给weblogic指定大小的内?
在启动Weblogic的脚本中Q位于所在Domian对应服务器目录下的startServerNameQ,增加set MEM_ARGS=-Xms32m -Xmx200mQ可以调整最内存ؓ(f)32MQ最?00M
81、如何设定的weblogic的热启动模式(开发模?与品发布模?
可以在管理控制台中修改对应服务器的启动模式ؓ(f)开发或产品模式之一。或者修Ҏ(gu)务的启动文g或者commenv文gQ增加set PRODUCTION_MODE=true?br>82、如何启动时不需输入用户名与密码?
修改服务启动文gQ增? WLS_USER和W(xu)LS_PWV也可以在boot.properties文g中增加加密过的用户名和密?
83、在weblogic理制台中对一个应用域(或者说是一个网?Domain)q行jms?qing)ejb或连接池{相关信息进行配|后,实际保存在什么文件中?
保存在此Domain的config.xml文g中,它是服务器的核心配置文g?br>84、说说weblogic中一个Domain的缺省目录结?比如要将一个简单的helloWorld.jsp攑օ何目录下,然的在浏览器上就可打入http://L:端口?/helloword.jsp可以看到运行结果了? 又比如这其中用到了一个自己写的javaBean该如何办?
Domain目录服务器目录applicationsQ将应用目录攑֜此目录下可以作为应用访问,如果是Web应用Q应用目录需要满Web应用目录要求Qjsp文g可以直接攑֜应用目录中,Javabean需要放在应用目录的WEB-INF目录的classes目录中,讄服务器的~省应用可以实现在览器上无需输入应用名?br>85、在weblogic中发布ejb需涉及(qing)到哪些配|文?br>不同cd的EJB涉及(qing)的配|文件不同,都涉?qing)到的配|文件包括ejb-jar.xml,weblogic-ejb-jar.xmlCMP实体Bean一般还需要weblogic-cmp-rdbms-jar.xml
86、如何在weblogic中进行ssl配置与客L(fng)的认证配|或说说j2ee(标准)q行ssl的配|?br>~省安装中用DemoIdentity.jks和DemoTrust.jks KeyStore实现SSLQ需要配|服务器使用Enable SSLQ配|其端口Q在产品模式下需要从CA获取U有密钥和数字证书,创徏identity和trust keystoreQ装载获得的密钥和数字证书。可以配|此SSLq接是单向还是双向的?br>87、如何查看在weblogic中已l发布的EJB?
可以使用理控制収ͼ在它的Deployment中可以查看所有已发布的EJB
88、CORBA是什?用途是什?
CORBA 标准是公共对象请求代理结?Common Object Request Broker Architecture)Q由对象理l织 (Object Management GroupQ羃写ؓ(f) OMG)标准化。它的组成是接口定义语言(IDL), 语言l定(binding:也译~?和允许应用程序间互操作的协议? 其目的ؓ(f)Q用不同的程序设计语a书写在不同的q程中运行,Z同的操作pȝ开发?br>89、说说你所熟?zhn)或听说过的j2ee中的几种常用模式??qing)对设计模式的一些看?br>Session Facade PatternQ用SessionBean讉KEntityBean
Message Facade PatternQ实现异步调?br>EJB Command PatternQ用Command JavaBeans取代SessionBeanQ实现轻量讉K
Data Transfer Object FactoryQ通过DTO Factory化EntityBean数据提供Ҏ(gu)?br>Generic Attribute AccessQ通过AttibuteAccess接口化EntityBean数据提供Ҏ(gu)?br>Business InterfaceQ通过q程Q本圎ͼ(j)接口和Beancd现相同接口规范业务逻辑一致?br>QJQ架构的设计好坏直接媄(jing)响系l的性能、可扩展性、可l护性、组件可重用性及(qing)开发效率。项目越复杂Q项目队伍越庞大则越能体现良好设计的重要性?br>90、说说在weblogic中开发消息Bean时的persistent与non-persisten的差?br>persistent方式的MDB可以保证消息传递的可靠?也就是如果EJB容器出现问题而JMS服务器依然会(x)消息在此MDB可用的时候发送过来,而nonQpersistent方式的消息将被丢弃?/p>

91、Servlet执行时一般实现哪几个Ҏ(gu)Q?br>public void init(ServletConfig config)
public ServletConfig getServletConfig()
public String getServletInfo()
public void service(ServletRequest request,ServletResponse response)
public void destroy()
92、j2ee常用的设计模式?说明工厂模式?br>Java中的23U设计模式:(x)
FactoryQ工厂模式)(j)Q? BuilderQ徏造模式)(j)Q?Factory MethodQ工厂方法模式)(j)Q?br>PrototypeQ原始模型模式)(j)QSingletonQ单例模式)(j)Q? FacadeQ门面模式)(j)Q?br>AdapterQ适配器模式)(j)Q?BridgeQ桥梁模式)(j)Q? CompositeQ合成模式)(j)Q?br>DecoratorQ装饰模式)(j)Q?FlyweightQn元模式)(j)Q? ProxyQ代理模式)(j)Q?br>CommandQ命令模式)(j)Q?InterpreterQ解释器模式Q, VisitorQ访问者模式)(j)Q?br>IteratorQP代子模式Q, MediatorQ调停者模式)(j)Q? MementoQ备忘录模式Q,
ObserverQ观察者模式)(j)Q?StateQ状态模式)(j)Q?StrategyQ策略模式)(j)Q?br>Template MethodQ模板方法模式)(j)Q?Chain Of ResponsibleityQ责任链模式Q?br>工厂模式Q工厂模式是一U经常被使用到的模式Q根据工厂模式实现的cd以根据提供的数据生成一l类中某一个类的实例,通常q一l类有一个公q抽象父类q且实现了相同的Ҏ(gu)Q但是这些方法针对不同的数据q行了不同的操作。首先需要定义一个基c,该类的子c通过不同的方法实C基类中的Ҏ(gu)。然后需要定义一个工厂类Q工厂类可以Ҏ(gu)条g生成不同的子cd例。当得到子类的实例后Q开发h员可以调用基cM的方法而不必考虑到底q回的是哪一个子cȝ实例?br>93、EJB需直接实现它的业务接口或Home接口吗,L(fng)q理由?br>q程接口和Home接口不需要直接实玎ͼ他们的实C码是由服务器产生的,E序q行中对应实现类?x)作为对应接口类型的实例被用?br>94、排序都有哪几种Ҏ(gu)Q请列D。用JAVA实现一个快速排序?br>排序的方法有Q插入排序(直接插入排序、希?dng)排序?j)Q交换排序(冒排序、快速排序)(j)Q选择排序Q直接选择排序、堆排序Q,归ƈ排序Q分配排序(排序、基数排序)(j)
快速排序的伪代码?br>/ /使用快速排序方法对a[ 0 :n- 1 ]排序
从a[ 0 :n- 1 ]中选择一个元素作为m i d d l eQ该元素为支?br>把余下的元素分割ZDleft 和r i g h tQ得l e f t中的元素都小于等于支点,而right 中的元素都大于等于支?br>递归C用快速排序方法对left q行排序
递归C用快速排序方法对right q行排序
所得结果ؓ(f)l e f t + m i d d l e + r i g h t
95、请对以下在J2EE中常用的名词q行解释(或简单描q?
web容器Q给处于其中的应用程序组ӞJSPQSERVLETQ提供一个环境,使JSP,SERVLET直接更容器中的环境变量接口交互,不必x其它pȝ问题。主要有WEB服务器来实现。例如:(x)TOMCAT,WEBLOGIC,WEBSPHERE{。该容器提供的接口严格遵守J2EE规范中的WEB APPLICATION 标准。我们把遵守以上标准的WEB服务器就叫做J2EE中的WEB容器?br>EJB容器QEnterprise java bean 容器。更h行业领域特色。他提供l运行在其中的组件EJB各种理功能。只要满J2EE规范的EJB攑օ该容器,马上׃(x)被容器进行高效率的管理。ƈ且可以通过现成的接口来获得pȝU别的服务。例如邮件服务、事务管理?br>JNDIQ(Java Naming & Directory InterfaceQJAVA命名目录服务。主要提供的功能是:(x)提供一个目录系l,让其它各地的应用E序在其上面留下自己的烦(ch)引,从而满_速查扑֒定位分布式应用程序的功能?br>JMSQ(Java Message ServiceQJAVA消息服务。主要实现各个应用程序之间的通讯。包括点对点和广播?br>JTAQ(Java Transaction APIQJAVA事务服务。提供各U分布式事务服务。应用程序只需调用其提供的接口卛_?br>JAFQ(Java Action FrameWorkQJAVA安全认证框架。提供一些安全控制方面的框架。让开发者通过各种部v和自定义实现自己的个性安全控制策略?br>RMI/IIOP:QRemote Method Invocation /internet对象h中介协议Q他们主要用于通过q程调用服务。例如,q程有一台计机上运行一个程序,它提供股分析服务,我们可以在本地计机上实现对其直接调用。当然这是要通过一定的规范才能在异构的pȝ之间q行通信。RMI是JAVAҎ(gu)的?br>96、JAVA语言如何q行异常处理Q关键字Qthrows,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
Java通过面向对象的方法进行异常处理,把各U不同的异常q行分类Qƈ提供了良好的接口。在Java中,每个异常都是一个对象,它是ThrowablecL其它子类的实例。当一个方法出现异常后便抛Z个异常对象,该对象中包含有异怿息,调用q个对象的方法可以捕获到q个异常q进行处理。Java的异常处理是通过5个关键词来实现的Qtry、catch、throw、throws和finally。一般情况下是用try来执行一D늨序,如果出现异常Q系l会(x)抛出QthrowsQ一个异常,q时候你可以通过它的cd来捕捉(catchQ它Q或最后(finallyQ由~省处理器来处理?br>用try来指定一块预防所?#8220;异常”的程序。紧跟在tryE序后面Q应包含一个catch子句来指定你惌捕捉?#8220;异常”的类型?br>throw语句用来明确地抛Z?#8220;异常”?br>throws用来标明一个成员函数可能抛出的各种“异常”?br>Finally为确保一D代码不发生什?#8220;异常”都被执行一D代码?br>可以在一个成员函数调用的外面写一个try语句Q在q个成员函数内部写另一个try语句保护其他代码。每当遇C个try语句Q?#8220;异常”的框架就攑ֈ堆栈上面Q直到所有的try语句都完成。如果下一U的try语句没有Ҏ(gu)U?#8220;异常”q行处理Q堆栈就?x)展开Q直到遇到有处理q种“异常”的try语句?br>97、一?#8220;.java”源文件中是否可以包括多个c(不是内部c)(j)Q有什么限Ӟ
可以。必d有一个类名与文g名相同?br>98、MVC的各个部分都有那些技术来实现?如何实现?
MVC是ModelQViewQController的简写?Model" 代表的是应用的业务逻辑Q通过JavaBeanQEJBlg实现Q, "View" 是应用的表示面(由JSP面产生Q,"Controller" 是提供应用的处理q程控制Q一般是一个ServletQ,通过q种设计模型把应用逻辑Q处理过E和昄逻辑分成不同的组件实现。这些组件可以进行交互和重用?br>99、java中有几种Ҏ(gu)可以实现一个线E?用什么关键字修饰同步Ҏ(gu)? stop()和suspend()Ҏ(gu)Z不推荐用?
有两U实现方法,分别是承ThreadcM实现Runnable接口
用synchronized关键字修饰同步方?br>反对使用stop()Q是因ؓ(f)它不安全。它?x)解除由U程获取的所有锁定,而且如果对象处于一U不q诏状态,那么其他U程能在那种状态下(g)查和修改它们。结果很难检查出真正的问题所在。suspend()Ҏ(gu)Ҏ(gu)发生死锁。调用suspend()的时候,目标U程?x)停下来Q但却仍然持有在q之前获得的锁定。此Ӟ其他MU程都不能访问锁定的资源Q除非被“挂v”的线E恢复运行。对MU程来说Q如果它们想恢复目标U程Q同时又试图使用M一个锁定的资源Q就?x)造成死锁。所以不应该使用suspend()Q而应在自qThreadcM|入一个标志,指出U程应该zdq是挂v。若标志指出U程应该挂vQ便用wait()命其q入{待状态。若标志指出U程应当恢复Q则用一个notify()重新启动U程?br>100、java中有几种cd的流QJDK为每U类型的提供了一些抽象类以供l承Q请说出他们分别是哪些类Q?br>字节,字符。字节流l承于InputStream OutputStreamQ字W流l承于InputStreamReader OutputStreamWriter。在java.io包中q有许多其他的流Q主要是Z提高性能和用方ѝ?br>101、java中会(x)存在内存泄漏吗,L(fng)单描q?br>?x)。如Qint i,i2; return (i-i2); //when i够大的正?i2够大的负数。结果会(x)造成溢位Q导致错误?br>102、java中实现多态的机制是什么?
Ҏ(gu)的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父cM子类之间多态性的一U表玎ͼ重蝲Overloading是一个类中多态性的一U表现?br>103、垃圑֛收器的基本原理是什么?垃圾回收器可以马上回收内存吗Q有什么办法主动通知虚拟行垃圑֛Ӟ
对于GC来说Q当E序员创建对象时QGC开始监控这个对象的地址、大以?qing)用情c(din)通常QGC采用有向囄方式记录和管理堆(heap)中的所有对象。通过q种方式定哪些对象?可达?Q哪些对象是"不可辄"。当GC定一些对象ؓ(f)"不可?ӞGC有责Q回收q些内存I间。可以。程序员可以手动执行System.gc()Q通知GCq行Q但是Java语言规范q不保证GC一定会(x)执行?br>104、静态变量和实例变量的区别?
static i = 10; //帔R
class A a; a.i =10;//可变
105、什么是java序列化,如何实现java序列化?
序列化就是一U用来处理对象流的机Ӟ所谓对象流也就是将对象的内容进行流化。可以对化后的对象q行d操作Q也可将化后的对象传输于网l之间。序列化是ؓ(f)了解军_对对象流q行d操作时所引发的问题?br>序列化的实现Q将需要被序列化的cd现Serializable接口Q该接口没有需要实现的Ҏ(gu)Qimplements Serializable只是Z标注该对象是可被序列化的Q然后用一个输出流(如:(x)FileOutputStream)来构造一个ObjectOutputStream(对象?对象Q接着Q用ObjectOutputStream对象的writeObject(Object obj)Ҏ(gu)可以将参数为obj的对象写?即保存其状?Q要恢复的话则用输入?br>106、是否可以从一个staticҎ(gu)内部发出寚wstaticҎ(gu)的调用?
不可?如果其中包含对象的method()Q不能保证对象初始化.
107、写clone()Ҏ(gu)Ӟ通常都有一行代码,是什么?
Clone 有缺省行为,super.clone();他负责生正大的I间Qƈ逐位复制?br>108、在JAVA中,如何跛_当前的多重嵌套@环?
用break; return Ҏ(gu)?br>109、List、Map、Set三个接口Q存取元素时Q各有什么特点?
List 以特定次序来持有元素Q可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value|value可多倹{?br>110、J2EE是什么?
J2EE是Sun公司提出的多?multi-diered),分布?distributed),Zlg(component-base)的企业应用模型(enterpriese application model).在这L(fng)一个应用系l中Q可按照功能划分Z同的lgQ这些组件又可在不同计算ZQƈ且处于相应的层次(tier)中。所属层ơ包括客户层(clietn tier)lg,web层和lg,Business层和lg,企业信息pȝ(EIS)层?br>111、UML斚w
标准建模语言UML。用例图,静态图(包括cd、对象图和包?,行ؓ(f)?交互?序?合作?,实现图?br>112、说Z些常用的c,包,接口Q请各D5?br>常用的类QBufferedReader BufferedWriter FileReader FileWirter String Integer
常用的包Qjava.lang java.awt java.io java.util java.sql
常用的接口:(x)Remote List Map Document NodeList
113、开发中都用C那些设计模式?用在什么场?
每个模式都描qC一个在我们的环境中不断出现的问题,然后描述了该问题的解x案的核心。通过q种方式Q你可以无数ơ地使用那些已有的解x案,无需在重复相同的工作。主要用CMVC的设计模式。用来开发JSP/Servlet或者J2EE的相兛_用。简单工厂模式等?br>114、jsp有哪些动?作用分别是什?
JSP共有以下6U基本动?jsp:includeQ在面被请求的时候引入一个文件?jsp:useBeanQ寻找或者实例化一个JavaBean? jsp:setPropertyQ设|JavaBean的属性?jsp:getPropertyQ输出某个JavaBean的属性? jsp:forwardQ把h转到一个新的页面? jsp:pluginQ根据浏览器cd为Java插g生成OBJECT或EMBED标记?br>115、Anonymous Inner Class (匿名内部c? 是否可以extends(l承)其它c,是否可以implements(实现)interface(接口)?
可以l承其他cL完成其他接口Q在swing~程中常用此方式?br>116、应用服务器与WEB SERVER的区别?
应用服务器:(x)Weblogic、Tomcat、Jboss
WEB SERVERQIIS? Apache
117、BS与CS的联pM区别?br>C/S是Client/Server的羃写。服务器通常采用高性能的PC、工作站或小型机Qƈ采用大型数据库系l,如Oracle、Sybase、Informix? SQL Server。客L(fng)需要安装专用的客户端Y件?br>B/QxBrower/Server的羃写,客户Z只要安装一个浏览器QBrowserQ,如Netscape Navigator或Internet ExplorerQ服务器安装Oracle、Sybase、Informix?SQL Server{数据库。在q种l构下,用户界面完全通过WWW览器实玎ͼ一部分事务逻辑在前端实玎ͼ但是主要事务逻辑在服务器端实现。浏览器通过Qeb Server 同数据库q行数据交互?br>C/S ?B/S 区别Q?
Q.g环境不同:
  C/S 一般徏立在专用的网l上, 范围里的网l环? 局域网之间再通过专门服务器提供连接和数据交换服务.
  B/S 建立在广域网之上? 不必是专门的|络g环境,例与?sh)话上? U用讑֤. 信息自己理. 有比C/S更强的适应范围, 一般只要有操作pȝ和浏览器p
Q.对安全要求不?
  C/S 一般面向相对固定的用户? 对信息安全的控制能力很强. 一般高度机密的信息pȝ采用C/S l构适宜. 可以通过B/S发布部分可公开信息.
  B/S 建立在广域网之上, 对安全的控制能力相对? 可能面向不可知的用户?br>Q.对程序架构不?
  C/S E序可以更加注重程, 可以Ҏ(gu)限多层次校验, 对系l运行速度可以较少考虑.
  B/S 对安全以?qing)访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/Sl构的程序架构是发展的趋? 从MS?Netpd的BizTalk 2000 Exchange 2000{? 全面支持|络的构件搭建的pȝ. SUN 和IBM推的JavaBean 构g技术等,?B/S更加成熟.
Q.软g重用不同
  C/S E序可以不可避免的整体性考虑, 构g的重用性不如在B/S要求下的构g的重用性好.
  B/S 对的多重l构,要求构g相对独立的功? 能够相对较好的重?入买来的餐桌可以再利用,而不是做在墙上的矛_桌子
Q.pȝl护不同
  C/S E序׃整体? 必须整体考察, 处理出现的问题以?qing)系l升U? 升? 可能是再做一个全新的pȝ
  B/S 构gl成,斚w构g个别的更?实现pȝ的无~升U? pȝl护开销减到最?用户从网上自׃载安装就可以实现升.
Q.处理问题不同
  C/S E序可以处理用户面固? q且在相同区? 安全要求高需? 与操作系l相? 应该都是相同的系l?br>  B/S 建立在广域网? 面向不同的用L(fng), 分散地域, q是C/S无法作到? 与操作系l^台关pL?
Q.用户接口不同
  C/S 多是建立的Windowq_?表现Ҏ(gu)有限,对程序员普遍要求较高
  B/S 建立在浏览器? 有更加丰富和生动的表现方式与用户交流. q且大部分难度减?减低开发成?
Q.信息不?
  C/S E序一般是典型的中央集权的机械式处? 交互性相对低
  B/S 信息向可变? B-B B-C B-G{信息、流向的变化, 更像交易中心?br>118、LINUX下线E,GDIcȝ解释?br>LINUX实现的就是基于核心轻量q程?一对一"U程模型Q一个线E实体对应一个核心轻量q程Q而线E之间的理在核外函数库中实现?
GDIcMؓ(f)囑փ讑֤~程接口cd?br>119、STRUTS的应?如STRUTS架构)
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中提供关联支持,帮助开发员创徏交互式表单应用??提供了一pd实用对象QXML处理、通过Java reflection APIs自动处理JavaBeans属性、国际化的提C和消息?br>120、Jdo是什?
JDO是Java对象持久化的新的规范Qؓ(f)java data object的简U?也是一个用于存取某U数据仓库中的对象的标准化API。JDO提供了透明的对象存储,因此对开发h员来_(d)存储数据对象完全不需要额外的代码Q如JDBC API的用)(j)。这些繁琐的例行工作已经转移到JDO产品提供商n上,使开发h员解脱出来,从而集中时间和_֊在业务逻辑上。另外,JDO很灵z,因ؓ(f)它可以在M数据底层上运行。JDBC只是面向关系数据库(RDBMSQJDO更通用Q提供到M数据底层的存储功能,比如关系数据库、文件、XML以及(qing)对象数据库(ODBMSQ等{,使得应用可移植性更强?/p>

121、内部类可以引用他包含类的成员吗Q有没有什么限Ӟ
一个内部类对象可以讉K创徏它的外部cd象的内容
122、WEB SERVICE名词解释。JSWDL开发包的介l。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释?
Web ServiceWeb Service是基于网l的、分布式的模块化lgQ它执行特定的Q务,遵守具体的技术规范,q些规范使得Web Service能与其他兼容的组件进行互操作?br>JAXP(Java API for XML Parsing) 定义了在Java中用DOM, SAX, XSLT的通用的接口。这样在你的E序中你只要使用q些通用的接口,当你需要改变具体的实现时候也不需要修改代码?br>JAXM(Java API for XML Messaging) 是ؓ(f)SOAP通信提供讉KҎ(gu)和传输机制的API?br>WSDL是一U?XML 格式Q用于将|络服务描述Zl端点,q些端点对包含面向文档信息或面向q程信息的消息进行操作。这U格式首先对操作和消息进行抽象描qͼ然后其l定到具体的|络协议和消息格式上以定义端炏V相关的具体端点即组合成为抽象端点(服务Q?br>SOAP即简单对象访问协?Simple Object Access Protocol)Q它是用于交换XML~码信息的轻量协议?
UDDI 的目的是为电(sh)子商务徏立标准;UDDI是一套基于Web的、分布式的、ؓ(f)Web Service提供的、信息注册中心的实现标准规范Q同时也包含一l企业能将自n提供的Web Service注册Q以使别的企业能够发现的讉K协议的实现标准?/p>

JAVA代码查错
1.
abstract class Name {
private String name;
public abstract boolean isStupidName(String name) {}
}
大侠们,q有何错?
{案: 错。abstract method必须以分L(fng),且不带花括号?br>2.
public class Something {
void doSomething () {
private String s = "";
int l = s.length();
}
}
有错?
{案: 错。局部变量前不能攄M讉K修饰W? (privateQpublicQ和protected)。final可以用来修饰局部变?br>(final如同abstract和strictfpQ都是非讉K修饰W,strictfp只能修饰class和method而非variable)?br>3.
abstract class Something {
private abstract String doSomething ();
}
q好像没什么错?
{案: 错。abstract的methods不能以private修饰。abstract的methods是让子cimplement(实现)具体l节的,怎么可以用private把abstract
method锁h? (同理Qabstract method前不能加final)?br>4.
public class Something {
public int addOne(final int x) {
return ++x;
}
}
q个比较明显?br>{案: 错。int x被修饰成finalQ意味着x不能在addOne method中被修改?br>5.
public class Something {
public static void main(String[] args) {
Other o = new Other();
new Something().addOne(o);
}
public void addOne(final Other o) {
o.i++;
}
}
class Other {
public int i;
}
和上面的很相|都是关于final的问题,q有错吗?
{案: 正确。在addOne method中,参数o被修饰成final。如果在addOne method里我们修改了o的reference
(比如: o = new Other();)Q那么如同上例这题也是错的。但q里修改的是o的member vairable
(成员变量)Q而o的referenceq没有改变?br>6.
class Something {
int i;
public void doSomething() {
System.out.println("i = " + i);
}
}
有什么错? 看不出来啊?br>{案: 正确。输出的?i = 0"。int i属於instant variable (实例变量Q或叫成员变?。instant variable有default value。int的default value??br>7.
class Something {
final int i;
public void doSomething() {
System.out.println("i = " + i);
}
}
和上面一题只有一个地方不同,是多了一个final。这N错了吗?
{案: 错。final int i是个final的instant variable (实例变量Q或叫成员变?。final的instant variable没有default valueQ必dconstructor (构造器)l束之前被赋予一个明的倹{可以修改ؓ(f)"final int i = 0;"?br>8.
public class Something {
public static void main(String[] args) {
Something s = new Something();
System.out.println("s.doSomething() returns " + doSomething());
}
public String doSomething() {
return "Do something ...";
}
}
看上d完美?br>{案: 错。看上去在main里call doSomething没有什么问题,毕竟两个methods都在同一个class里。但仔细看,main是static的。static method不能直接call non-static methods。可Ҏ(gu)"System.out.println("s.doSomething() returns " + s.doSomething());"。同理,static method不能讉Knon-static instant variable?br>9.
此处QSomethingcȝ文g名叫OtherThing.java
class Something {
private static void main(String[] something_to_do) {
System.out.println("Do something ...");
}
}
q个好像很明显?br>{案: 正确。从来没有h说过Java的Class名字必须和其文g名相同。但public class的名字必d文g名相同?br>10Q?br>interface A{
int x = 0;
}
class B{
int x =1;
}
class C extends B implements A {
public void pX(){
System.out.println(x);
}
public static void main(String[] args) {
new C().pX();
}
}
{案Q错误。在~译时会(x)发生错误(错误描述不同的JVM有不同的信息Q意思就是未明确的x调用Q两个x都匹配(p在同时import java.util和java.sql两个包时直接声明Date一P(j)。对于父cȝ变量,可以用super.x来明,而接口的属性默认隐含ؓ(f) public static final.所以可以通过A.x来明?br>11.
interface Playable {
void play();
}
interface Bounceable {
void play();
}
interface Rollable extends Playable, Bounceable {
Ball ball = new Ball("PingPang");
}
class Ball implements Rollable {
private String name;
public String getName() {
return name;
}
public Ball(String name) {
this.name = name;
}
public void play() {
ball = new Ball("Football");
System.out.println(ball.getName());
}
}
q个错误不容易发现?br>{案: 错?interface Rollable extends Playable, Bounceable"没有问题。interface可承多个interfacesQ所以这里没错。问题出在interface Rollable里的"Ball ball = new Ball("PingPang");"。Q何在interface里声明的interface variable (接口变量Q也可称成员变量)Q默认ؓ(f)public static final。也是?Ball ball = new Ball("PingPang");"实际上是"public static final Ball ball = new Ball("PingPang");"。在BallcȝPlay()Ҏ(gu)中,"ball = new Ball("Football");"改变了ball的referenceQ而这里的ball来自Rollable interfaceQRollable interface里的ball是public static final的,final的object是不能被改变reference的。因此编译器在"ball = new Ball("Football");"q里昄有错?br>JAVA~程?br>1Q现在输入n个数字,以逗号Q分开Q然后可选择升或者降序排序;按提交键在另一面昄按什么排序,l果为,提供reset
import java.util.*;
public class bycomma{
public static String[] splitStringByComma(String source){
if(source==null||source.trim().equals(""))
return null;
StringTokenizer commaToker = new StringTokenizer(source,",");
String[] result = new String[commaToker.countTokens()];
int i=0;
while(commaToker.hasMoreTokens()){
result[i] = commaToker.nextToken();
i++;
}
return result;
}
public static void main(String args[]){
String[] s = splitStringByComma("5,8,7,4,3,9,1");
int[] ii = new int[s.length];
for(int i = 0;i<s.length;i++){
ii[i] =Integer.parseInt(s[i]);
}
Arrays.sort(ii);
//asc
for(int i=0;i<s.length;i++){
System.out.println(ii[i]);
}
//desc
for(int i=(s.length-1);i>=0;i--){
System.out.println(ii[i]);
}
}
}
2Q金额{换,阿拉伯数字的金额转换成中国传l的形式如:(x)QE1011Q->Q一千零一拾一元整Q输出?br>package test.format;
import java.text.NumberFormat;
import java.util.HashMap;
public class SimpleMoneyFormat {
public static final String EMPTY = "";
public static final String ZERO = "?;
public static final String ONE = "?;
public static final String TWO = "?;
public static final String THREE = "?;
public static final String FOUR = "?;
public static final String FIVE = "?;
public static final String SIX = "?;
public static final String SEVEN = "?;
public static final String EIGHT = "?;
public static final String NINE = "?;
public static final String TEN = "?;
public static final String HUNDRED = "?;
public static final String THOUSAND = "?;
public static final String TEN_THOUSAND = "?;
public static final String HUNDRED_MILLION = "?;
public static final String YUAN = "?;
public static final String JIAO = "?;
public static final String FEN = "?;
public static final String DOT = ".";

private static SimpleMoneyFormat formatter = null;
private HashMap chineseNumberMap = new HashMap();
private HashMap chineseMoneyPattern = new HashMap();
private NumberFormat numberFormat = NumberFormat.getInstance();

private SimpleMoneyFormat() {
numberFormat.setMaximumFractionDigits(4);
numberFormat.setMinimumFractionDigits(2);
numberFormat.setGroupingUsed(false);

chineseNumberMap.put("0", ZERO);
chineseNumberMap.put("1", ONE);
chineseNumberMap.put("2", TWO);
chineseNumberMap.put("3", THREE);
chineseNumberMap.put("4", FOUR);
chineseNumberMap.put("5", FIVE);
chineseNumberMap.put("6", SIX);
chineseNumberMap.put("7", SEVEN);
chineseNumberMap.put("8", EIGHT);
chineseNumberMap.put("9", NINE);
chineseNumberMap.put(DOT, DOT);

chineseMoneyPattern.put("1", TEN);
chineseMoneyPattern.put("2", HUNDRED);
chineseMoneyPattern.put("3", THOUSAND);
chineseMoneyPattern.put("4", TEN_THOUSAND);
chineseMoneyPattern.put("5", TEN);
chineseMoneyPattern.put("6", HUNDRED);
chineseMoneyPattern.put("7", THOUSAND);
chineseMoneyPattern.put("8", HUNDRED_MILLION);
}

public static SimpleMoneyFormat getInstance() {
if (formatter == null)
formatter = new SimpleMoneyFormat();
return formatter;
}

public String format(String moneyStr) {
checkPrecision(moneyStr);
String result;
result = convertToChineseNumber(moneyStr);
result = addUnitsToChineseMoneyString(result);
return result;
}

public String format(double moneyDouble) {
return format(numberFormat.format(moneyDouble));
}

public String format(int moneyInt) {
return format(numberFormat.format(moneyInt));
}

public String format(long moneyLong) {
return format(numberFormat.format(moneyLong));
}

public String format(Number moneyNum) {
return format(numberFormat.format(moneyNum));
}

private String convertToChineseNumber(String moneyStr) {
String result;
StringBuffer cMoneyStringBuffer = new StringBuffer();
for (int i = 0; i < moneyStr.length(); i++) {
cMoneyStringBuffer.append(chineseNumberMap.get(moneyStr.substring(i, i + 1)));
}
//拾䘪仟万亿等都是汉字里面才有的单位,加上它们
int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
int moneyPatternCursor = 1;
for (int i = indexOfDot - 1; i > 0; i--) {
cMoneyStringBuffer.insert(i, chineseMoneyPattern.get(EMPTY + moneyPatternCursor));
moneyPatternCursor = moneyPatternCursor == 8 ? 1 : moneyPatternCursor + 1;
}

String fractionPart = cMoneyStringBuffer.substring(cMoneyStringBuffer.indexOf("."));
cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf("."), cMoneyStringBuffer.length());
while (cMoneyStringBuffer.indexOf("零拾") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零拾"), cMoneyStringBuffer.indexOf("零拾") + 2, ZERO);
}
while (cMoneyStringBuffer.indexOf("零䘪") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零䘪"), cMoneyStringBuffer.indexOf("零䘪") + 2, ZERO);
}
while (cMoneyStringBuffer.indexOf("零仟") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零仟"), cMoneyStringBuffer.indexOf("零仟") + 2, ZERO);
}
while (cMoneyStringBuffer.indexOf("零万") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零万"), cMoneyStringBuffer.indexOf("零万") + 2, TEN_THOUSAND);
}
while (cMoneyStringBuffer.indexOf("零亿") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零亿"), cMoneyStringBuffer.indexOf("零亿") + 2, HUNDRED_MILLION);
}
while (cMoneyStringBuffer.indexOf("雉") != -1) {
cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("雉"), cMoneyStringBuffer.indexOf("雉") + 2, ZERO);
}
if (cMoneyStringBuffer.lastIndexOf(ZERO) == cMoneyStringBuffer.length() - 1)
cMoneyStringBuffer.delete(cMoneyStringBuffer.length() - 1, cMoneyStringBuffer.length());
cMoneyStringBuffer.append(fractionPart);

result = cMoneyStringBuffer.toString();
return result;
}


private String addUnitsToChineseMoneyString(String moneyStr) {
String result;
StringBuffer cMoneyStringBuffer = new StringBuffer(moneyStr);
int indexOfDot = cMoneyStringBuffer.indexOf(DOT);
cMoneyStringBuffer.replace(indexOfDot, indexOfDot + 1, YUAN);
cMoneyStringBuffer.insert(cMoneyStringBuffer.length() - 1, JIAO);
cMoneyStringBuffer.insert(cMoneyStringBuffer.length(), FEN);
if (cMoneyStringBuffer.indexOf("零角零分") != -1)//没有零头Q加?br>cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零角零分"), cMoneyStringBuffer.length(), "?);
else
if (cMoneyStringBuffer.indexOf("零分") != -1)//没有零分Q加?br>cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf("零分"), cMoneyStringBuffer.length(), "?);
else {
if(cMoneyStringBuffer.indexOf("零角")!=-1)
cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf("零角"),cMoneyStringBuffer.indexOf("零角")+2);
// tmpBuffer.append("?);
}
result = cMoneyStringBuffer.toString();
return result;
}

private void checkPrecision(String moneyStr) {
int fractionDigits = moneyStr.length() - moneyStr.indexOf(DOT) - 1;
if (fractionDigits > 2)
throw new RuntimeException("金额" + moneyStr + "的小C多于两位?); //_ֺ不能比分?br>}

public static void main(String args[]) {
System.out.println(getInstance().format(new Double(10010001.01)));
}
}
3、承时候类的执行顺序问?一般都是选择?问你会(x)打印Z?
{?父类Q?
package test;
public class FatherClass {
public FatherClass() {
System.out.println("FatherClass Create");
}
}
子类:
package test;
import test.FatherClass;
public class ChildClass extends FatherClass {
public ChildClass() {
System.out.println("ChildClass Create");
}
public static void main(String[] args) {
FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass();
}
}
输出l果Q?
C:>java test.ChildClass
FatherClass Create
FatherClass Create
ChildClass Create
4、内部类的实现方?
{:(x)CZ代码如下Q?
package test;
public class OuterClass {
private class InterClass {
public InterClass() {
System.out.println("InterClass Create");
}
}
public OuterClass() {
InterClass ic = new InterClass();
System.out.println("OuterClass Create");
}
public static void main(String[] args) {
OuterClass oc = new OuterClass();
}
}
输出l果:
C:>java test/OuterClass
InterClass Create
OuterClass Create
再一个例题:(x)
public class OuterClass {
private double d1 = 1.0;
//insert code here
}
You need to insert an inner class declaration at line 3. Which two inner class declarations are
valid?(Choose two.)
A. class InnerOne{
public static double methoda() {return d1;}
}
B. public class InnerOne{
static double methoda() {return d1;}
}
C. private class InnerOne{
double methoda() {return d1;}
}
D. static class InnerOne{
protected double methoda() {return d1;}
}
E. abstract class InnerOne{
public abstract double methoda();
}
说明如下Q?
一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员??A、B ?
?静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。故 D ?
?非静态内部类的非静态成员可以访问外部类的非静态变量??C 正确
?{案为C、E
5、Java 的通信~程Q编E题(或问{?Q用JAVA SOCKET~程Q读服务器几个字W,再写入本地显C?
{?Server端程?
package test;
import java.net.*;
import java.io.*;
public class Server {
private ServerSocket ss;
private Socket socket;
private BufferedReader in;
private PrintWriter out;
public Server() {
try {
ss=new ServerSocket(10000);
while(true) {
socket = ss.accept();
String RemoteIP = socket.getInetAddress().getHostAddress();
String RemotePort = ":"+socket.getLocalPort();
System.out.println("A client come in!IP:"+Remo



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1644586




chenguo 2007-06-28 13:02 发表评论
]]>
下拉日期控ghttp://www.tkk7.com/cgogg/articles/125332.htmlchenguochenguoWed, 20 Jun 2007 05:34:00 GMThttp://www.tkk7.com/cgogg/articles/125332.htmlhttp://www.tkk7.com/cgogg/comments/125332.htmlhttp://www.tkk7.com/cgogg/articles/125332.html#Feedback0http://www.tkk7.com/cgogg/comments/commentRss/125332.htmlhttp://www.tkk7.com/cgogg/services/trackbacks/125332.html 下拉日期控g

1.试代码
<HTML>
    <HEAD>
        <title>WebForm1</title>
        <LINK HREF="Calendar.css" TYPE="text/css" REL="stylesheet">
        <script language="javascript" src="Calendar.js"></script>
    </HEAD>
    <body>
        <form id="Form1" method="post" runat="server">
            <table cellSpacing="1" cellPadding="1" width="936" border="0" height="29" style="LEFT: 10px; POSITION: absolute; TOP: 15px">
                <tr>
                    <td>
                        <!--日期实例?-begin-->
                        <asp:TextBox id="txtDATE" runat="server" onchange='javascript:gChangeDate(this,0);' onblur='javascript:gChangeDate(this,0);'></asp:TextBox>
                        <INPUT TYPE="button" value='' NAME='bntDATE' OnClick='showCalendar(txtDATE,0)' class="button">
                        <!--end-->
                        <select size="1" name="REC_SOURCE_SCUR">
                            <OPTION VALUE="" selected></OPTION>
                            <OPTION VALUE="1">1</OPTION>
                            <OPTION VALUE="2">2</OPTION>
                        </select>&nbsp;
                        <asp:Button id="Button1" runat="server" Text="Button"></asp:Button>
                    </td>
                </tr>
            </table>
        </form>
    </body>
</HTML>
2.代码下蝲/Files/singlepine/Calendardemo.rar



chenguo 2007-06-20 13:34 发表评论
]]>
XmlHttp实现无刷C联动下拉?/title><link>http://www.tkk7.com/cgogg/articles/125331.html</link><dc:creator>chenguo</dc:creator><author>chenguo</author><pubDate>Wed, 20 Jun 2007 05:33:00 GMT</pubDate><guid>http://www.tkk7.com/cgogg/articles/125331.html</guid><wfw:comment>http://www.tkk7.com/cgogg/comments/125331.html</wfw:comment><comments>http://www.tkk7.com/cgogg/articles/125331.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/cgogg/comments/commentRss/125331.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/cgogg/services/trackbacks/125331.html</trackback:ping><description><![CDATA[     摘要: XmlHttp实现无刷C联动下拉? 1.html代码 <HTML>    <HEAD>        <title>XmlHttp实现无刷C联动下拉?lt;/title>    &...  <a href='http://www.tkk7.com/cgogg/articles/125331.html'>阅读全文</a><img src ="http://www.tkk7.com/cgogg/aggbug/125331.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/cgogg/" target="_blank">chenguo</a> 2007-06-20 13:33 <a href="http://www.tkk7.com/cgogg/articles/125331.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://airou08.com" target="_blank">Ʒۺߵһ</a>| <a href="http://badabg.com" target="_blank">պƵѿ</a>| <a href="http://tvnxl.com" target="_blank">AVרAV</a>| <a href="http://yes5555.com" target="_blank">Ƶ߹ۿ</a>| <a href="http://xianfeng-motor.com" target="_blank">ձƵ</a>| <a href="http://by23336.com" target="_blank">þ޾Ʒ˳ۺ</a>| <a href="http://www454yu.com" target="_blank">͵͵޸պ</a>| <a href="http://asdfghjklzxcv.com" target="_blank">ģƵ</a>| <a href="http://saohuo7.com" target="_blank">߲ѲavƬ</a>| <a href="http://zblinghang.com" target="_blank">˵ĺÿѹۿƵ</a>| <a href="http://155562.com" target="_blank">Ʒɫѿ</a>| <a href="http://www-13696.com" target="_blank">޾ƷƵ</a>| <a href="http://hnmxld.com" target="_blank">ھƵƷ</a>| <a href="http://www97544.com" target="_blank">Ӱȷѹۿ</a>| <a href="http://116603a.com" target="_blank">ƷۺרƬþþ </a>| <a href="http://7755ga.com" target="_blank">a˵</a>| <a href="http://www-135888.com" target="_blank">רȷӰ</a>| <a href="http://7766ks.com" target="_blank">AVպۺһ</a>| <a href="http://chinahongfeng.com" target="_blank">Ļһȥ̨</a>| <a href="http://aqd1987.com" target="_blank">㽶þһ </a>| <a href="http://av-fantasy.com" target="_blank">avۺavһ</a>| <a href="http://www-554949.com" target="_blank">޹Ʒþþϼ1</a>| <a href="http://516kd.com" target="_blank">ŮƵվa</a>| <a href="http://57gt.com" target="_blank">ŮƵaƵȫվɫ</a>| <a href="http://selangcun.com" target="_blank">Ȱ׽һ</a>| <a href="http://qnyjny.com" target="_blank">þ99ëƬѹۿ</a>| <a href="http://cqshangshu.com" target="_blank">hƵ߹ۿ</a>| <a href="http://szhszszy.com" target="_blank">ڵëƬѿ</a>| <a href="http://haiholr.com" target="_blank">Ƶ߹ۿ</a>| <a href="http://wwwwmmmm.com" target="_blank">AëƬA</a>| <a href="http://yytengsheng.com" target="_blank">޾Ʒa߹ۿ</a>| <a href="http://pufenghotel.com" target="_blank">Ļһҳ</a>| <a href="http://wusongtv.com" target="_blank">AV˾Ʒ߹ۿ</a>| <a href="http://gachi1151.com" target="_blank">Ƶվ</a>| <a href="http://yuezhaoming.com" target="_blank">91޾Ʒ鶹</a>| <a href="http://600c81.com" target="_blank">޾ƷɫƵ߹ۿԴ</a>| <a href="http://7272004.com" target="_blank">ܻƺ۵վ</a>| <a href="http://5138k.com" target="_blank">99reþþƷƷ</a>| <a href="http://mhysf.com" target="_blank">ҹavӰԺ</a>| <a href="http://jioupin.com" target="_blank">ҹƵ߹ۿ</a>| <a href="http://7766qq.com" target="_blank">Ʒ߹ۿ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>