??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲天堂第一页,欧美hdfree性xxxx,人体精品一二三区http://www.aygfsteel.com/majianan/<br> <div align=center > <img width=200 height=50 src="http://www.aygfsteel.com/images/blogjava_net/majianan/14891/r_5858488902000cu2.gif" name="welcome"> </div> <br> <script language="JavaScript"> <!-- Begin text = "人本是hQ不必刻意去做hQ世本是世,无须_ֿd世;自然的才是快乐的?; color1 = "blue"; color2 = "red"; fontsize = "2"; speed = 100; i = 0; if (navigator.appName == "Netscape") { document.write("<layer id=a visibility=show></layer><br><br><br>"); } else { document.write("<div id=a></div>"); } function changeCharColor() { if (navigator.appName == "Netscape") { document.a.document.write("<center><font face=arial size =" + fontsize + "><font color=" + color1 + ">"); for (var j = 0; j < text.length; j++) { if(j == i) { document.a.document.write("<font face=arial color=" + color2 + ">" + Text.charAt(i) + "</font>"); } else { document.a.document.write(text.charAt(j)); } } document.a.document.write('</font></font></center>'); document.a.document.close(); } if (navigator.appName == "Microsoft Internet Explorer") { str = "<center><font face=arial size=" + fontsize + "><font color=" + color1 + ">"; for (var j = 0; j < text.length; j++) { if( j == i) { str += "<font face=arial color=" + color2 + ">" + text.charAt(i) + "</font>"; } else { str += text.charAt(j); } } str += "</font></font></center>"; a.innerHTML = str; } (i == text.length) ? i=0 : i++; } setInterval("changeCharColor()", speed); // End --> </script> zh-cnThu, 03 Jul 2025 02:03:22 GMTThu, 03 Jul 2025 02:03:22 GMT60表格列宽鼠标拖动http://www.aygfsteel.com/majianan/archive/2009/03/03/257541.html马嘉?/dc:creator>马嘉?/author>Tue, 03 Mar 2009 06:04:00 GMThttp://www.aygfsteel.com/majianan/archive/2009/03/03/257541.htmlhttp://www.aygfsteel.com/majianan/comments/257541.htmlhttp://www.aygfsteel.com/majianan/archive/2009/03/03/257541.html#Feedback2http://www.aygfsteel.com/majianan/comments/commentRss/257541.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/257541.html表格列宽鼠标拖动

马嘉?/a>    2009-03-03

 

共同学习Q欢q{载。{载请注明地址?/span>http://blog.csdn.net/majianan/archive/2009/03/03/3952649.aspx】,谢谢O(∩_∩)OQ?/span>

 

/******************************************
 * 没有版权 L修改 改好了请发给我一?O(∩_∩)O
 * EmailQ?a href="mailto:jianan.ma@gmail.com" mce_href="mailto:jianan.ma@gmail.com">jianan.ma@gmail.com
 * QQ:52524611
 *******************************************/

 功能Q?Q鼠标拖动列宽?Q双L复列?/p>

 

 

 

 

 

 

 



]]>
【JavaScript】悬窗?/title><link>http://www.aygfsteel.com/majianan/archive/2009/01/13/251029.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Tue, 13 Jan 2009 00:16:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2009/01/13/251029.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/251029.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2009/01/13/251029.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/251029.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/251029.html</trackback:ping><description><![CDATA[<span style="font-family: Verdana"> <p align="center"><span style="font-family: Verdana"><a >【JavaScript】悬窗?/a></span></p> <p align="center"><span style="font-family: Verdana"><a >马嘉?/a> 2009-01-13</span></p> <p align="left"><span style="font-family: Verdana"><br /> </p> <p><font face="Arial">共同学习Q欢q{载。{载请注明地址?/font><font face="Arial"><a >http://blog.csdn.net/majianan/archive/2009/01/11/3754521.aspx</a></font><font face="Arial">】,谢谢O(∩_∩)OQ?/font></p> <p align="left"><br /> 主要是window.onscroll的运?br /> <br /> 效果如图Q?/span></p> <span style="font-family: Verdana"> <p align="left"><br /> <br /> <img height="383" alt="" src="http://www.aygfsteel.com/images/blogjava_net/majianan/18165/o_scroll.jpg" width="609" border="0" /><br /> <br /> 代码如下Q?br /> </p> <p align="center"></span></p> <div align="left"> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">html</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">    </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">head</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">        </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">title</span><span style="color: #0000ff">></span><span style="color: #000000">悬QH口CZ</span><span style="color: #0000ff"></</span><span style="color: #800000">title</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">        </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">script </span><span style="color: #ff0000">type</span><span style="color: #0000ff">="text/javascript"</span><span style="color: #0000ff">></span></span><span style="color: #000000; background-color: #f5f5f5"><br /> <span style="font-family: Verdana">            window.onscroll </span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5"> </span><span style="color: #0000ff; background-color: #f5f5f5">function</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5"> () {<br />                 </span><span style="color: #0000ff; background-color: #f5f5f5">var</span><span style="color: #000000; background-color: #f5f5f5"> div </span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5"> document.getElementById(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">divSuspended</span><span style="color: #000000; background-color: #f5f5f5">"</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5">);<br />                 div.style.top </span><span style="color: #000000; background-color: #f5f5f5">=</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5"> document.body.scrollTop;<br />             }<br />             window.onresize </span><span style="color: #000000; background-color: #f5f5f5">=</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5"> window.onscroll;<br />             </span><span style="color: #0000ff; background-color: #f5f5f5">function</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5"> init(){<br />                 </span><span style="color: #0000ff; background-color: #f5f5f5">var</span><span style="color: #000000; background-color: #f5f5f5"> df </span><span style="color: #000000; background-color: #f5f5f5">=</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5"> document.createDocumentFragment();<br />                 </span><span style="color: #0000ff; background-color: #f5f5f5">for</span><span style="color: #000000; background-color: #f5f5f5">(</span><span style="color: #0000ff; background-color: #f5f5f5">var</span><span style="color: #000000; background-color: #f5f5f5"> i</span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5">0</span><span style="color: #000000; background-color: #f5f5f5">;i</span><span style="color: #000000; background-color: #f5f5f5"><</span><span style="color: #000000; background-color: #f5f5f5">20</span><span style="color: #000000; background-color: #f5f5f5">;i</span><span style="color: #000000; background-color: #f5f5f5">++</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5">){<br />                     </span><span style="color: #0000ff; background-color: #f5f5f5">var</span><span style="color: #000000; background-color: #f5f5f5"> p </span><span style="color: #000000; background-color: #f5f5f5">=</span><span style="color: #000000; background-color: #f5f5f5"> document.createElement(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">p</span><span style="color: #000000; background-color: #f5f5f5">"</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5">);<br />                     p.appendChild(document.createTextNode(</span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5"> Line </span><span style="color: #000000; background-color: #f5f5f5">"</span><span style="color: #000000; background-color: #f5f5f5">+</span></span><span style="font-family: Verdana"><span style="color: #000000; background-color: #f5f5f5">i));<br />                     df.appendChild(p);<br />                 }<br />                 document.body.appendChild(df);<br />                 window.onscroll();<br />             }<br />         </span><span style="color: #0000ff"></</span><span style="color: #800000">script</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">    </span></span><span style="font-family: Verdana"><span style="color: #0000ff"></</span><span style="color: #800000">head</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">    </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">body </span><span style="color: #ff0000">onload</span><span style="color: #0000ff">="init()"</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">         </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">p</span><span style="color: #0000ff">></span><span style="color: #000000">Try scrolling this window.</span><span style="color: #0000ff"></</span><span style="color: #800000">p</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">         </span></span><span style="font-family: Verdana"><span style="color: #0000ff"><</span><span style="color: #800000">div </span><span style="color: #ff0000">id</span><span style="color: #0000ff">="divSuspended"</span><span style="color: #ff0000"> style</span><span style="color: #0000ff">="position: absolute; buttom: 0px; right: 0px; color: #cccccc; width: 150px; height: 30px; background-color: navy"</span><span style="color: #0000ff">></span><span style="color: #000000">q是悬QH口</span><span style="color: #0000ff"></</span><span style="color: #800000">div</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> <span style="font-family: Verdana">    </span></span><span style="font-family: Verdana"><span style="color: #0000ff"></</span><span style="color: #800000">body</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> </span><span style="font-family: Verdana"><span style="color: #0000ff"></</span><span style="color: #800000">html</span><span style="color: #0000ff">></span></span><span style="color: #000000"><br /> </span></div> </div> <p align="left"><br />  </p> </span> <img src ="http://www.aygfsteel.com/majianan/aggbug/251029.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2009-01-13 08:16 <a href="http://www.aygfsteel.com/majianan/archive/2009/01/13/251029.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【JavaScript】列表(SelectQ选项QOptionQ的UdQ上下左叻Ihttp://www.aygfsteel.com/majianan/archive/2009/01/11/250894.html马嘉?/dc:creator>马嘉?/author>Sun, 11 Jan 2009 14:58:00 GMThttp://www.aygfsteel.com/majianan/archive/2009/01/11/250894.htmlhttp://www.aygfsteel.com/majianan/comments/250894.htmlhttp://www.aygfsteel.com/majianan/archive/2009/01/11/250894.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/250894.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/250894.html 

 【JavaScript】列表(SelectQ选项QOptionQ的UdQ上下左叻I

马嘉?nbsp;   2009-1-11

共同学习Q欢q{载。{载请注明地址?/span>http://blog.csdn.net/majianan/archive/2009/01/11/3754521.aspx】,谢谢O(∩_∩)OQ?/span>

寏V?/span>【JavaScript】列表元素上下左右移动:Select和Option的应?/span>》中的方法进行了优化?/span>

1.使用appendChildQ)Ҏ优化左右Ud函数moveRightQ)

2.使用insertBeforeQ)Ҏ优化上下Ud函数moveUpQ)

3.修改同时选中多项上下Ud不正常的Bug

 

功能如下Q?/span>

支持一ơ选中多项在左叛_表中来回Ud

 



 

 

 

代码如下Q?/span>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 
<HEAD>
  
<TITLE> New Document </TITLE>
  
<META NAME="Author" CONTENT="majianan">
<SCRIPT language=javascript>
    
var currentSel = null;
    
function
 setButton(obj){        
        
if(obj.length==0return
;
        currentSel 
=
 obj;
        
if(obj.id=="leftSel"
){
            document.getElementById(
"btnLeft").disabled = true
;
            document.getElementById(
"btnRight").disabled = false
;                
            reSelect(document.getElementById(
"rightSel"
));            
        }
else
{
            document.getElementById(
"btnLeft").disabled = false
;
            document.getElementById(
"btnRight").disabled = true
;               
            reSelect(document.getElementById(
"leftSel"
));                
        }       
    }

      
function
 move(){
          
if(arguments.length==1
){
              moveUp(arguments[
0
]);
          }
else if(arguments.length==2
){
              moveRight(arguments[
0],arguments[1
]);
          }
      }

      
function
 moveUp(direction){
          
if(currentSel == nullreturn
;
          
if(direction){//up

            if (currentSel.selectedIndex > 0) {  
                
for(var i=0;i<currentSel.length;i++
){
                    
if
(currentSel[i].selected){
                        
var oOption =
 currentSel.options[i];
                        
var oPrevOption = currentSel.options[i---1
];
                        currentSel.insertBefore(oOption, oPrevOption);
                    }
                }                
            } 
          }
else{//down

            for(var i=currentSel.length-1;i>=0;i--){
                
if
(currentSel[i].selected){
                    
if(i==currentSel.length-1return
;
                    
var oOption =
 currentSel.options[i];
                    
var oNextOption = currentSel.options[i+1
];
                    currentSel.insertBefore(oNextOption, oOption);                        
                }
            }
          }
      }

    
function
 moveRight(src,des){
        
if(src.selectedIndex==-1
){
            alert(
"Please select first!"
);
            
return
;
        }
        
for(var i=0;i<src.length;i++
){
            
if
(src[i].selected){
                des.appendChild(src.options[i
--
]);
            }
        }
        setButton(des);
    }
    
    
function
 reSelect(obj){
        
for(var i=0; i<obj.length; i++
){
            
if(obj[i].selected) obj[i].selected = false
;
        }
    }
    
</SCRIPT>


 
</HEAD>

 
<BODY>
  
<form id="form1">
      
<table width="40%" align="center">
          
<tr>
              
<td>
                  
<input type="button" value=" Up " id="btnUp" onClick="move(true);" style="width:65"/>
                
<br />
                
<input type="button" value=" Down " id="btnDowm" onClick="move(false);" style="width:65" />                
              
</td>

              
<td>
                  
<select multiple id="leftSel" onclick="setButton(this)" ondblclick="document.getElementById('btnRight').click()" style="height:200px;width:100px;">

                    
<option value="1">Java</option>
                    
<option value="2">JavaScript</option>
                    
<option value="3">C++</option>
                    
<option value="4">HTML</option>
                
</select>
            
</td>
            
<td>
                
<input type="button" value=" >> " id="btnRight" onClick="move(document.getElementById('leftSel'),document.getElementById('rightSel'));" style="width:65" />
                
<br />
                
<input type="button" value=" << " id="btnLeft" onClick="move(document.getElementById('rightSel'),document.getElementById('leftSel'));" style="width:65" />
                
</td>
                
<td>
                    
<select multiple id="rightSel" onclick="setButton(this)"  ondblclick="document.getElementById('btnLeft').click()" style="height:200px;width:100px;" >
 
                    
<option value="5">CSS</option>
                    
<option value="6">.Net</option>
                    
</select>
                
</td>
            
</tr>
        
</table>
    
</form>
 
</BODY>
</HTML>



]]>
【原】CSS+JavaScript 实现TabPane늭http://www.aygfsteel.com/majianan/archive/2008/12/30/249173.html马嘉?/dc:creator>马嘉?/author>Tue, 30 Dec 2008 06:35:00 GMThttp://www.aygfsteel.com/majianan/archive/2008/12/30/249173.htmlhttp://www.aygfsteel.com/majianan/comments/249173.htmlhttp://www.aygfsteel.com/majianan/archive/2008/12/30/249173.html#Feedback2http://www.aygfsteel.com/majianan/comments/commentRss/249173.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/249173.html阅读全文

]]>
【原】【JavaScript】列表元素上下左右移动:Select和Option的应?/title><link>http://www.aygfsteel.com/majianan/archive/2008/12/26/248462.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Fri, 26 Dec 2008 07:20:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2008/12/26/248462.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/248462.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2008/12/26/248462.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/248462.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/248462.html</trackback:ping><description><![CDATA[     摘要:  【JavaScript】列表元素上下左右移动:Select和Option的应?马嘉?nbsp;   2008-12-26 共同学习Q欢q{载。{载请注明地址【http://blog.csdn.net/majianan/archive/2008/12/26/3614255.aspx】,谢谢O(∩_∩)OQ?   ...  <a href='http://www.aygfsteel.com/majianan/archive/2008/12/26/248462.html'>阅读全文</a><img src ="http://www.aygfsteel.com/majianan/aggbug/248462.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2008-12-26 15:20 <a href="http://www.aygfsteel.com/majianan/archive/2008/12/26/248462.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaScript中字W串q接性能优化http://www.aygfsteel.com/majianan/archive/2008/12/20/247417.html马嘉?/dc:creator>马嘉?/author>Fri, 19 Dec 2008 16:09:00 GMThttp://www.aygfsteel.com/majianan/archive/2008/12/20/247417.htmlhttp://www.aygfsteel.com/majianan/comments/247417.htmlhttp://www.aygfsteel.com/majianan/archive/2008/12/20/247417.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/247417.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/247417.htmlJavaScript中字W串q接性能优化

        -- JavaScript 学习W记

马嘉?/span>    2008-12-19

 

var str = "hello"
str 
+= " world"

 

后台所做工作:

1Q创建存?"hello" 的字W串Q且?str 指向它?/span>

2Q创建存?"world" 的字W串?/span>

3Q创建存储结果的字符丌Ӏ?/span>

4Q将 str 中的当前内容复制到结果字W串中?/span>

5Q把 world 复制到结果字W串中?/span>

6Q更?str Q str 指向l果字符丌Ӏ?/span>

 

每拼接一ơ字W串@环重?Q~6Q,如果重复成百上千ơ则会非常消耗资源,影响性能?/span>

 

解决ҎQ?/span>

使用 Array 对象存储字符Ԍ之后使用 joinQ)Ҏ输出l果?/span>

仿照 Java 中的 StringBuffer cR?/span>

 

    function StringBuffer(){ 
        
this._strings = new
 Array; 
    } 
    StringBuffer.prototype.append 
= function
 (str){ 
        
this
._strings.push(str); 
    } 
    StringBuffer.prototype.toString 
= function
 (){ 
        
return this._strings.join(""
); 
    } 

 

试性能Q?/span>

代码1Q?"+=" 拼接字符?/span>

 

var d = new Date(); 
var str = ""

for(var i=0;i<10000;i++
){ 
    str 
+= "test"



var d2 = new
 Date(); 
document.writeln(d2.getTime()
-d.getTime()); 

 

代码2Q?StringBuffer

 

var d = new Date(); 
var str = new
 StringBuffer(); 
for(var i=0;i<10000;i++
){ 
    str.append(
"test"
); 

var res =
 str.toString(); 
var d2 = new
 Date(); 
document.writeln(d2.getTime()
-d.getTime()); 

 

从多ơ测试结果看来,使用StringBuffer 可以节省50%以上的时间?/span>



]]>
【JavaScript】sliceQ)、substringQ)、substrQ)的区?/title><link>http://www.aygfsteel.com/majianan/archive/2008/12/16/246579.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Tue, 16 Dec 2008 03:00:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2008/12/16/246579.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/246579.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2008/12/16/246579.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/246579.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/246579.html</trackback:ping><description><![CDATA[<p align="center"><span style="font-family: Verdana">【JavaScript】sliceQ)、substringQ)、substrQ)的区?/span></p> <p align="center"><a ><span style="font-family: Verdana">马嘉?/span></a><span style="font-family: Verdana">    2008-12-16</span></p> <p> </p> <p><span style="font-family: Verdana">JavaScript中String 对象的sliceQ)、substringQ)、substrQ)Ҏ都能提取字符串的一部分Q但使用时有所区别?/span></p> <p><span style="font-family: Verdana"> </span></p> <ul> <li style="font-size: 11pt"><span style="font-family: Verdana"><strong style="font-size: 12pt; color: #333399">stringObject.sliceQstartIndexQendIndexQ?/strong></span> </li> </ul> <p><span style="font-family: Verdana">q回字符?stringObject ?startIndex 开始(包括 startIndex Q到 endIndex l束Q不包括 endIndex Qؓ止的所有字W?/span></p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>1Q?/strong></font>参数 endIndex 可选,如果没有指定Q则默认为字W串的长?stringObject.length ?/span><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.slice(</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.slice(</span><span style="color: #000000">3</span><span style="color: #000000">,stringObject.length)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world!</span></span></div> <p class="highlighter"></span><span style="font-family: Verdana"><font color="#ff0000">【注1?/font>字符串中W一个字W的位置是从?】开始的Q最后一个字W的位置为【stringObject.length-1】,所以sliceQ)Ҏq回的字W串不包括endIndex位置的字W?/span></p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>2Q?/strong></font>startIndex 、endIndex 可以是负数。如果ؓ负,则表CZ字符串尾部开始算赗即-1表示字符串最后一个字W?/span><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.slice(</span><span style="color: #000000">-</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> ld! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.slice(</span><span style="color: #000000">-</span><span style="color: #000000">3</span><span style="color: #000000">,stringObject.length)); </span><span style="color: #008000">//</span><span style="color: #008000"> ld! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.slice(</span><span style="color: #000000">-</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> ld</span></span></div> <p class="highlighter"></span> <span style="font-family: Verdana"><font color="#ff0000">【注2?/font>合理q用负数可以化代?/span></p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>3Q?/strong></font>startIndex、endIndex 都是可选的Q如果都不填则返回字W串 stringObject 的全部,{同于slice(0)</span><font color="#3366ff"><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.slice()); </span><span style="color: #008000">//</span><span style="color: #008000"> hello world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.slice(</span><span style="color: #000000">0</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> hello world!</span></span></div> <p class="highlighter"></span> </p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>4Q?/strong></font><font color="#000000">如果startIndex、endIndex 相等Q则q回IZ</font></span></p> </blockquote> <p></font><span style="font-family: Verdana"><font color="#ff0000">【注3?/font>String.slice() ?Array.slice() 怼</span></p> <p><span style="font-family: Verdana"> </span></p> <p> </p> <ul> <li><span style="font-family: Verdana"><strong style="font-size: 12pt; color: #333399">stringObject.substring(startIndex、endIndex)</strong></span> </li> </ul> <p><span style="font-family: Verdana">q回字符?stringObject ?startIndex 开始(包括 startIndex Q到 endIndex l束Q不包括 endIndex Qؓ止的所有字W?/span></p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>1Q?/strong></font>startIndex  是一个非负的整数Q必d写。endIndex 是一个非负整敎ͼ可选。如果没有,则默认ؓ字符串的长度stringObject.length ?/span><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.substring(</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substring(</span><span style="color: #000000">3</span><span style="color: #000000">,stringObject.length)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substring(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">7</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo w,I格也算在内[l][o][ ][w]</span></span></div> <p class="highlighter"></span> </p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>2Q?/strong></font>如果startIndex、endIndex 相等Q则q回IZ。如果startIndex ?endIndex 大,则提取子串之前,调换两个参数。即stringObject.substringQstartIndexQendIndexQ等同于stringObject.substringQendIndexQstartIndexQ?/span><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.substring(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> IZ </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substring(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">7</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo w </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substring(</span><span style="color: #000000">7</span><span style="color: #000000">,</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo w</span></span></div> <p class="highlighter"></span> <span style="font-family: Verdana"><font color="#ff0000">【注4?/font><font color="#000000">?/font>substringQ)相比QsliceQ)更灵z,可以接收负参数?/span></p> <p><span style="font-family: Verdana"> </span></p> <p><span style="font-family: Verdana"> </span></p> <ul> <li><span style="font-family: Verdana"><strong style="font-size: 12pt; color: #333399">stringObject.substrQstartIndexQlengthQ?/strong></span> </li> </ul> <p><span style="font-family: Verdana">q回字符?stringObject ?startIndex 开始(包括 startIndex Q指定数目(lengthQ的字符字符?/span></p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>1Q?/strong></font>startIndex 必须填写Q可以是负数。如果ؓ负,则表CZ字符串尾部开始算赗即-1表示字符串最后一个字W?/span></p> <p><span style="font-family: Verdana"><font color="#000080"><strong>2Q?/strong></font>参数 length 可选,如果没有指定Q则默认为字W串的长?stringObject.length ?/span><span></p> </blockquote> <div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /><span style="color: #000000">  </span><span style="color: #0000ff">var</span><span style="color: #000000"> stringObject </span><span style="color: #000000">=</span><span style="color: #000000"> </span><span style="color: #000000">"</span><span style="color: #000000">hello world!</span><span style="color: #000000">"</span></span><span style="font-family: Verdana"><span style="color: #000000">;<br /> <img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" />  alert(stringObject.substr(</span><span style="color: #000000">3</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substr(</span><span style="color: #000000">3</span><span style="color: #000000">,stringObject.length)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo world! </span></span><span style="color: #008000"><br /> <span style="font-family: Verdana"><img alt="" src="http://www.aygfsteel.com/images/OutliningIndicators/None.gif" align="top" /></span></span><span style="font-family: Verdana"><span style="color: #000000">  alert(stringObject.substr(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">4</span><span style="color: #000000">)); </span><span style="color: #008000">//</span><span style="color: #008000"> lo w</span></span></div> <p class="highlighter"></span> </p> <blockquote dir="ltr" style="margin-right: 0px"> <p><span style="font-family: Verdana"><font color="#000080"><strong>3Q?/strong></font>substrQ)可以代替sliceQ)和substringQ)来用,从上面代码看?<font color="#000000">stringObject.substr(3,4) {同于stringObject.substring(3,7)</font></span></p> </blockquote> <p><span style="font-family: Verdana"> </span></p> <span style="font-family: Verdana"><font color="#ff0000">【注5?/font>ECMAscript 没有对该Ҏq行标准化,因此量用该Ҏ?/span> <img src ="http://www.aygfsteel.com/majianan/aggbug/246579.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2008-12-16 11:00 <a href="http://www.aygfsteel.com/majianan/archive/2008/12/16/246579.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【原创】CSS+JavaScript 实现菜单功能--改进?/title><link>http://www.aygfsteel.com/majianan/archive/2008/12/12/246029.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Fri, 12 Dec 2008 12:10:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2008/12/12/246029.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/246029.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2008/12/12/246029.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/246029.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/246029.html</trackback:ping><description><![CDATA[     摘要: CSS+JavaScript 实现菜单功能--改进?马嘉?nbsp;  2008-12-08   在上一《CSS+JavaScript 实现菜单功能》通过一个HTML面单的实现了菜单功能。但是实际开发当中,如果菜单栏有很多,频繁的修改HTMLQ会很繁琐,也容易出错?改进版本优化了这个问题,通过单的Javascript代码可以增加菜单。同时得HTML?..  <a href='http://www.aygfsteel.com/majianan/archive/2008/12/12/246029.html'>阅读全文</a><img src ="http://www.aygfsteel.com/majianan/aggbug/246029.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2008-12-12 20:10 <a href="http://www.aygfsteel.com/majianan/archive/2008/12/12/246029.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]打印整型的二q制格式http://www.aygfsteel.com/majianan/archive/2008/03/24/188166.html马嘉?/dc:creator>马嘉?/author>Mon, 24 Mar 2008 02:51:00 GMThttp://www.aygfsteel.com/majianan/archive/2008/03/24/188166.htmlhttp://www.aygfsteel.com/majianan/comments/188166.htmlhttp://www.aygfsteel.com/majianan/archive/2008/03/24/188166.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/188166.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/188166.html阅读全文

]]>
教你解决问题QCompilation error java.lang.OutOfMemoryError http://www.aygfsteel.com/majianan/archive/2008/03/19/187181.html马嘉?/dc:creator>马嘉?/author>Wed, 19 Mar 2008 02:39:00 GMThttp://www.aygfsteel.com/majianan/archive/2008/03/19/187181.htmlhttp://www.aygfsteel.com/majianan/comments/187181.htmlhttp://www.aygfsteel.com/majianan/archive/2008/03/19/187181.html#Feedback1http://www.aygfsteel.com/majianan/comments/commentRss/187181.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/187181.html阅读全文

]]>
Informix pȝ表(syscolumnsQ中字段cdQcoltypeQ字D늚含义http://www.aygfsteel.com/majianan/archive/2007/10/10/151670.html马嘉?/dc:creator>马嘉?/author>Wed, 10 Oct 2007 03:33:00 GMThttp://www.aygfsteel.com/majianan/archive/2007/10/10/151670.htmlhttp://www.aygfsteel.com/majianan/comments/151670.htmlhttp://www.aygfsteel.com/majianan/archive/2007/10/10/151670.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/151670.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/151670.html0 = CHAR
1 = SMALLINT
2 = INTEGE R
3 = FLOAT
4 = SMALLFLOAT
5 = DECIMAL
6 = SERIAL *
7 = DATE
8 = MONEY
9 = NULL
10 = DATETIME
11 = BYTE
12 = TEXT
13 = VARCHAR
14 = INTERVAL
15 = NCHAR
16 = NVARCHAR
17 = INT8
18 = SERIAL8 *
19 = SET
20 = MULTISET
21 = LIST
22 = Unnamed ROW
40 = Variable-length opaque type (LVARCHAR)
4118 = Named ROW

如果Q某字段要求非空Q则在原数字上加256Q?br /> 如:某字Dcoltype=262,那么,262-256=6Q该字段应该ؓQSERIAL not NULL cdQ?br />



]]>
Informixpȝ表说?/title><link>http://www.aygfsteel.com/majianan/archive/2007/10/10/151666.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Wed, 10 Oct 2007 03:27:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2007/10/10/151666.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/151666.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2007/10/10/151666.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/151666.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/151666.html</trackback:ping><description><![CDATA[<span style="font-size: 10pt; font-family: Verdana">  systablesQ描q数据库中的很张表;   <br />   syscolumnsQ描q数据库中表的列Q?nbsp;  <br />   sysindexesQ描q数据库中列的烦引;   <br />   sysfragmentsQ存储了分段索引的片D信息;   <br />   sysfragauthQ表识别列权限Q?nbsp;  <br />   sysviewsQ描qC数据库中定义的每个视图;   <br />   sysdpendQ描qC视图是如何依赖其他视囑֒表的Q?nbsp;  <br />   syssyntableQ定义每一个同义词及其所代表的对象;   <br />   sysconstraintsQ记录了加蝲在数据库表列上的U束Q?nbsp;  <br />   sysreferencesQ列Z攄在数据库上的参照U束Q它为数据库的每个参照约束徏立一?nbsp;  <br />   syscoldependQ记录了涉及查约束的所有列Q包括在U束中每列都会在syscoldepend表中创徏一行;   <br />   sysproceduresQ存放数据库中每个过E的特征Q?nbsp;  <br />   sysprocplanQ装载了q程执行所需的两内容(执行计划或查询计划、附属列表)Q?nbsp;  <br />   sysprocauthQ描q授予存储过E的权限Q?nbsp;  <br />   systriggersQ装载了关于触发器的信息Q?nbsp;  <br />   sysblobsQ确定BLOB列的存储位置Q?nbsp;  <br />   sysroleauthQ描q授予用L角色Q?nbsp;  <br />   sysobjstateQ存储了关于数据库对象的状态信息;   <br />   sysvlolationsQ违例或诊断表;</span> <br /> <span style="font-size: 10pt; font-family: Verdana">  sysdefaultsQ描q数据库中表的列的默认|</span> <img src ="http://www.aygfsteel.com/majianan/aggbug/151666.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2007-10-10 11:27 <a href="http://www.aygfsteel.com/majianan/archive/2007/10/10/151666.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[译]understanding constructorshttp://www.aygfsteel.com/majianan/archive/2007/04/20/112198.html马嘉?/dc:creator>马嘉?/author>Fri, 20 Apr 2007 10:01:00 GMThttp://www.aygfsteel.com/majianan/archive/2007/04/20/112198.htmlhttp://www.aygfsteel.com/majianan/comments/112198.htmlhttp://www.aygfsteel.com/majianan/archive/2007/04/20/112198.html#Feedback3http://www.aygfsteel.com/majianan/comments/commentRss/112198.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/112198.htmlunderstanding constructors

                  --How constructors differ from methods

                                               By Robert Nielsen, JavaWorld.com, 10/13/00

                                               [译] 马嘉?/a>       2007.04.20


key words:

constructor      构造函?nbsp;        method        Ҏ            instance          实例
object             对象              modifier         修饰W?nbsp;        return type      q回cd
static method   静态方?nbsp;        superclass      类           Inheritance      l承
platypus          鸭嘴?br>

我们说一个构造函数是Ҏ好比说x鸭嘴兽是另一个哺乛_物一栗?Z了解鸭嘴兽,知道其与其他的哺乛_物的差别Ҏ们来说非帔R要。同理,了解构造函敎ͼ知道构造函C其他Ҏ的区别对我们同样重要。对于Q何学习JavaQ尤其是Z获得资格证书的学生来_都需要知道这些区别。在q篇文章中,我将会一一道来。在文章l尾QTable1 ȝ了constructorQ构造函敎ͼ和methodQ方法)的重要区别?br>


Purpose and Function Q目的与功能Q?/span>


构造函数都有一个目的:创徏一个类的实例。也可以叫做创徏一个对象,如下Q?br>

Platypus p1 = new Platypus();


相比之下,ҎQmethodQ的目的昑־更ؓ普? 一个方法的基本功能是Z执行Java的代?




Signature differencesQ签名区别)Q?/span>Signature 不知道怎么译好)


构造函敎ͼconstructorsQ和ҎQmethodsQ在以下三个斚w存在差别Q?br>
·   修饰W?nbsp;  QmodifiersQ?br>·   q回cdQreturn typeQ?br>·   名字     QnameQ?br>
像方法一P构造函数可以有L一U访问修饰符Qaccess modifiersQ:公共的(publicQ,保护的(protectedQ,U有的(privateQ或者没有(常被UCؓpackage或者friendlyQ。不同于Ҏ的是Q构造函数只能被讉K修饰W进行限定。因此,构造函C能是abstract, static, final, natice or synchronized的?nbsp;

两者的q回cdQreturn typeQ也是截然不同的。方法可以拥有Q何有效的q回cdQ或者方法没有返回|q种情况下方法的q回cd为void。构造函数没有返回类型,也没有void?br>
最后,构造函数和Ҏ在取名方面也有很大的不同。构造函数名字与其类名(class nameQ相同;按照惯例Q方法用其他与cd不相同的名字。如果JavaE序员遵循通常惯例Q方法名会以小写字母开_构造函数名字以大写字母开头。ƈ且,因ؓ与类名相同,构造函数名字通常是个名词Q方法名字是个动词?br>



The use of "this" Qthis的用)


构造函数和Ҏ使用关键?this 差别很大?br>
Ҏ中的 this 指的是执行该Ҏ的类的实例(instanceQ。静态方法(static methodQ不使用 this 。因为静态方法不属于M一个类的实例,所?this 无所指向。静态方法M上属于一个类而非一个类的实例?br>
构造函C?this 指的是,在同一个类中拥有不同的参数列表的另一个构造函数。代码如下:

public class Platypus {
       String name;
       Platypus(String input) {
               name 
= input;
       }
       Platypus() {
               
this("John/Mary Doe");
       }
       
public static void main(String args[]) {
               Platypus p1 
= new Platypus("digger");
               Platypus p2 
= new Platypus();
       }
}


在代码中Q有两个构造函数?br>W一个构造函数通过一个String参数inputlnameq行赋倹{?br>W二个构造函数没有参敎ͼ通过默认的名?John/Mary Doe"来调用第一个构造函数?br>
如果在构造函C使用 thisQ则必须在构造函数的W一行代码当中,否则~译器会报错?br>注:在我q里的报错信息ؓ Constructor call must be the first statement in a constructor?br>



The use of "super"Qsuper的用)


Ҏ和构造函C?super 的时候,指的都是类QsuperclassQ,但也有所不同?br>
Ҏ中?super 会执行类中被覆盖的方法,如下所C:

class Mammal {
       
void getBirthInfo() {
               System.out.println(
"born alive.");
       }
}
class Platypus extends Mammal {
       
void getBirthInfo() {
               System.out.println(
"hatch from eggs");
               System.out.print(
"a mammal normally is ");
               
super.getBirthInfo();
       }
}


在上面代码中Qsuper.getBirthInfo() 会调用类 Mammal 中被覆盖的方?getBirthInfo().


构造函C使用 super 会调用类中的构造函数?br>如果在构造函C使用 superQ则必须在构造函数的W一行代码当中,否则~译器会报错?br>注:在我q里的报错信息ؓ Constructor call must be the first statement in a constructor?br>
代码如下Q?br>

public class SuperClassDemo {
        SuperClassDemo() {}
}
class Child extends SuperClassDemo {
       Child() {
               
super();
       }
}





Complier -- supplied codeQ编译器提供的代码)


当编译器自动为构造函数提供代码的时候,Java初学者可能会感到困惑。如果你的类中没有构造函敎ͼ~译器将会ؓ你自动提供一个没有参数的构造函数。如果你的代码如下:

public class Example {}


功能上它{同于如下代码:

public class Example {
       Example() {}
}


如果在你的构造函数的W一行代码当中没有?superQ那么编译器会自动ؓ你提供代码,插入 super?br>如果你的代码如下Q?br>

public class TestConstructors {
       TestConstructors() {}
}


功能上它{同于如下代码:

public class TestConstructors {
       TestConstructors() {
               
super();       
         }
}


初学者可能会有疑问:TestConstructors q没有承Q何类Qؓ什么它会调用父cȝ构造函数呢Q?br>{案是:?Java 中如果没有显C的l承一个类Q则默认为承自 Object cR?br>
如果没有昄的声明一个构造函敎ͼ~译器自动提供一个没有参数的构造函敎ͼ如果一个构造函数没有显C的 super 调用Q编译器自动提供一个没有参数的 super 调用。所以下面的两段代码在功能上是等LQ?br>

public class Example {} 


?br>

public class Example {
       Example() {
             
super();
       }
}





InheritanceQ承)


下面情况有什么不对?

律师阅读cA的遗嘱。所有家庭成员围坐在大会议桌旁,q且有些人在d呜咽。律师说刎ͼ“我,cAQ头脑清楚n体健P我所有的构造函数留l我的孩?#8221;?br>
问题是构造函C是通过l承得到的。然而幸q的是,子类可以自动的承父cL有的ҎQ所以子cdƈ不是一无所有?br>
CQJava Ҏ可以通过l承得到Q而构造函C行。看下面代码Q?br>

public class Example {
        
public void sayHi {
                system.out.println(
"Hi");
        }
        Example() {}
}
public class SubClass extends Example {
}


c?SubClass 自动l承父类?sayHi Ҏ。然而,构造函?Example() 不会被类 SubClass 所l承?br>



Summarizing the differences


构造函CҎ的区别就像鸭嘴兽与典型的Z^动物一栗尤其是在目的(purposeQ,{֐QsignatureQ,?this ?super 的用方面。另外,在承和~译器提供代码方面也有很大差异。记住所有的区别可能会非常辛苦,所以下面提供的一个表|单的概括了重要的差异斚w?br>

Topic Constructors Methods
Purpose Create an instance of a class Group Java statements
Modifiers Cannot be abstract, final, native, static, or synchronized Can be abstract, final, native, static, or synchronized
Return type No return type, not even void void or a valid return type
Name Same name as the class (first letter is capitalized by convention) -- usually a noun Any name except the class. Method names begin with a lowercase letter by convention -- usually the name of an action
this Refers to another constructor in the same class. If used, it must be the first line of the constructor Refers to an instance of the owning class. Cannot be used by static methods
super Calls the constructor of the parent class. If used, must be the first line of the constructor Calls an overridden method in the parent class
Inheritance Constructors are not inherited Methods are inherited
Compiler automatically supplies a default constructor If the class has no constructor, a no-argument constructor is automatically supplied Does not apply
Compiler automatically supplies a default call to the superclass constructor If the constructor makes no zero-or-more argument calls to super, a no-argument call to super is made Does not apply




原文Q?a >http://www.javaworld.com/jw-10-2000/jw-1013-constructors.html



]]>
java 关键?native 说明http://www.aygfsteel.com/majianan/archive/2007/04/19/111967.html马嘉?/dc:creator>马嘉?/author>Thu, 19 Apr 2007 08:02:00 GMThttp://www.aygfsteel.com/majianan/archive/2007/04/19/111967.htmlhttp://www.aygfsteel.com/majianan/comments/111967.htmlhttp://www.aygfsteel.com/majianan/archive/2007/04/19/111967.html#Feedback1http://www.aygfsteel.com/majianan/comments/commentRss/111967.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/111967.htmlJava 关键?native 说明

马嘉?/a>  2007-04-19



如果想用非Java代码来编写程序,或者需要直接操U늡Ӟ此时Q你可以~写本机Ҏ(native method)?/p>

native关键字就是用来声明本机方?native method)的。一旦声明,q些本机Ҏ可以在JavaE序中被调用Q就像调用其他JavaҎ一栗?br>  
native method 用C/C++语言实现Qƈ且被~译成DLLQ这些函数的实现体在DLL中,在Java中本机方法体只是一个分受?/p>

例如向操作系l请求机器的CPU~号ҎQ如下:

      public native int getCPUID();


native method 以可以被重蝲或者覆盖,也可以是final, static, synchronized, public, protected, private 的。但是本机方法不能声明ؓabstract或者strictfpcd?br>




]]>
Print Fibonacci Sequcncehttp://www.aygfsteel.com/majianan/archive/2007/04/18/111675.html马嘉?/dc:creator>马嘉?/author>Wed, 18 Apr 2007 08:47:00 GMThttp://www.aygfsteel.com/majianan/archive/2007/04/18/111675.htmlhttp://www.aygfsteel.com/majianan/comments/111675.htmlhttp://www.aygfsteel.com/majianan/archive/2007/04/18/111675.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/111675.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/111675.html
public class Fibonacci {

    
private static int MAX = 100;
    
/*
     * print the Fibonacci sequence for values < MAX
     
*/
    
public static void main(String[] args) {
        
int currentVal    = 1;
        
int nextVal        = 1;
        
while(currentVal<MAX){
            System.out.println(currentVal);
            nextVal 
= nextVal + currentVal ;
            currentVal 
= nextVal - currentVal;
        }
    }
}



]]>
?/title><link>http://www.aygfsteel.com/majianan/archive/2007/04/18/111520.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Wed, 18 Apr 2007 02:30:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2007/04/18/111520.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/111520.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2007/04/18/111520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/111520.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/111520.html</trackback:ping><description><![CDATA[<br><span style="FONT-FAMILY: Verdana">p东西呀Q只是生zȝ工具Q如果成了生zȝ目标没什么意思了</span><br><br> <img src ="http://www.aygfsteel.com/majianan/aggbug/111520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2007-04-18 10:30 <a href="http://www.aygfsteel.com/majianan/archive/2007/04/18/111520.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>QQ木马win32.QQPsw.wunaiwangdaod.a删除ҎQ!Q?/title><link>http://www.aygfsteel.com/majianan/archive/2007/02/09/99032.html</link><dc:creator>马嘉?/dc:creator><author>马嘉?/author><pubDate>Fri, 09 Feb 2007 08:30:00 GMT</pubDate><guid>http://www.aygfsteel.com/majianan/archive/2007/02/09/99032.html</guid><wfw:comment>http://www.aygfsteel.com/majianan/comments/99032.html</wfw:comment><comments>http://www.aygfsteel.com/majianan/archive/2007/02/09/99032.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.aygfsteel.com/majianan/comments/commentRss/99032.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/majianan/services/trackbacks/99032.html</trackback:ping><description><![CDATA[     摘要: QQ木马win32.QQPsw.wunaiwangdaod.a删除ҎQ!Q?nbsp; <a href='http://www.aygfsteel.com/majianan/archive/2007/02/09/99032.html'>阅读全文</a><img src ="http://www.aygfsteel.com/majianan/aggbug/99032.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/majianan/" target="_blank">马嘉?/a> 2007-02-09 16:30 <a href="http://www.aygfsteel.com/majianan/archive/2007/02/09/99032.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用JavaScript查大写键QCaps LockQ是否打开Q原创)http://www.aygfsteel.com/majianan/archive/2007/02/01/97284.html马嘉?/dc:creator>马嘉?/author>Thu, 01 Feb 2007 07:21:00 GMThttp://www.aygfsteel.com/majianan/archive/2007/02/01/97284.htmlhttp://www.aygfsteel.com/majianan/comments/97284.htmlhttp://www.aygfsteel.com/majianan/archive/2007/02/01/97284.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/97284.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/97284.html                         用JavaScript查大写键QCaps LockQ是否打开Q原创)

                                                  马嘉?/font>    2007q???br />

新年W一!希望新的一q大家和我一样天天开心,能多学点东西Q多多赚钱^-^


在用户遇到需要输入密码的面时候,密码中是否有大写字母Q大写键QCaps LockQ是否打开Q如果能l用户以提示Q岂不是更好Q?br />
下面的示例代码给ZҎQ必要的说明代码当中都有注释?br />问中知识点:event.keyCode  ?event.shiftKey
如果有不对,不明白地Ҏ者有更好的徏议,请告诉我Q谢谢^+^



HTML面代码

<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
< HTML >
< HEAD >
< TITLE >  Detect Caps Lock </ TITLE >
< script >
function  detectCapsLock(e){
    valueCapsLock 
=  e.keyCode ? e.keyCode:e.which; // Caps Lock 是否打开

    valueShift  =  e.shiftKey ? e.shiftKey:((valueCapsLock  ==   16 ) ? true : false ); // shift键是否按?br />
     if (((valueCapsLock  >=   65   &&  valueCapsLock  <=   90 &&   ! valueShift) // Caps Lock 打开Qƈ且 shift键没有按?/span>
     || ((valueCapsLock  >=   97   &&  valueCapsLock  <=   122 &&  valueShift)) // Caps Lock 打开Qƈ且按住 shift?/span>
        document.getElementById('capStatus').style.visibility  =  'visible';
    
else

        document.getElementById('capStatus').style.visibility 
=  'hidden';

  
/*

  javascript中keyCode代码对应?br />  event.keyCode=32        I格
  event.keyCode=13        回R
  event.keyCode=27        Esc
  event.keyCode=16)        Shift
  event.keyCode=17)        Ctrl
  event.keyCode=18)        Alt
  
*/

}
</ script >
</ HEAD >

< BODY >
< input  type ="password"  name ="pwd"  onkeypress ="detectCapsLock(event)"   />
< div  id ="capStatus"  style ="visibility:hidden" >< font  color =red > Caps Lock is on. < font ></ div >
</ BODY >
</ HTML >





]]>
Webdings字体图案http://www.aygfsteel.com/majianan/archive/2006/12/19/88726.html马嘉?/dc:creator>马嘉?/author>Tue, 19 Dec 2006 03:14:00 GMThttp://www.aygfsteel.com/majianan/archive/2006/12/19/88726.htmlhttp://www.aygfsteel.com/majianan/comments/88726.htmlhttp://www.aygfsteel.com/majianan/archive/2006/12/19/88726.html#Feedback3http://www.aygfsteel.com/majianan/comments/commentRss/88726.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/88726.html                                       Webdings字体图案
 
                                               
马嘉?/font>    2006-12-19


在网中适当的用Webdings字体,可以使网|加美?
一般我们经常用到的应该?font color="#000080">数字对应的webdings字体, q有Ҏ字符中的": ", 其他的就看个人喜好了.





数字对应的webdings字体:

0    1    2    3    4    5    6    7    8    9

0 1 2 3 4 5 6 7 8 9




英文写字母对应的webdings字体:

a    b    c    d    e    f    g    h    i    j    k    l    m


a b c d e f g h i j k l m



n    o    p    q    r    s    t    u    v    w    x    y    z


n o p q r s t u v w x y z




英文大写字母对应的webdings字体:

A    B   C   D   E   F   G   H    I    J   K    L    M


A B C D E F G H I J K L M



N    O   P   Q   R   S   T   U   V  W X  Y   Z


N O P Q R S T U V W X Y Z




Ҏ字符对应的webdings字体:


Ҏ字符:

`     !    @    #   $    %   ^   &  

webdings字体:

` ! @ # $ % ^ &




Ҏ字符:

*    (     )     -    +    |    -    =

webdings字体:

* ( ) - + | - =




Ҏ字符:

[     ]    {     }    ;    '     :     "

webdings字体:

[ ] { } ; ' : "



Ҏ字符:

<     >     ,    .    \    /     ?

webdings字体:
< > , . \ / ?




]]>
条g注释http://www.aygfsteel.com/majianan/archive/2006/12/09/86522.html马嘉?/dc:creator>马嘉?/author>Sat, 09 Dec 2006 03:44:00 GMThttp://www.aygfsteel.com/majianan/archive/2006/12/09/86522.htmlhttp://www.aygfsteel.com/majianan/comments/86522.htmlhttp://www.aygfsteel.com/majianan/archive/2006/12/09/86522.html#Feedback0http://www.aygfsteel.com/majianan/comments/commentRss/86522.htmlhttp://www.aygfsteel.com/majianan/services/trackbacks/86522.html                                                   条g注释
                                            
                                              
马嘉?/font> 2006-12-09

条g注释是一些if判断Q但q些判断不是在脚本里执行的,而是直接在html代码里执行的,例如:

<!-- [if XXX]>
q里是正常的html代码
<![endif]
-->


q里XXX是一些特定的东东Q在此列表几个出来,详细介绍各自的含义:

<!--[if IE]>             / 如果览器是IE /
<!--[if IE 5]>          / 如果览器是IE 5 的版本?
<!--[if IE 6]>          / 如果览器是IE 6 的版本?
<!--[if IE 7]>          / 如果览器是IE 7 的版本?


上面是几个常用的判断IE览器版本的语法Q下面再来介l一下相Ҏ较少用的逻辑判断的参敎ͼ
有几个参敎ͼlteQltQgteQgtQ?

lte QLess than or equal to  
lt   QLess than              
gte QGreater than or equal to
gt  QGreater than
!    Q不{于

例如Q?/font>

<!-- [if gt IE 5.5]>        / 如果IE版本大于5.5 /
<!--[if lte IE 6]>           / 如果IE版本于{于6 /
<!--[if !IE]>                 / 如果览器不是IE /


明白了条件注释的用法Q再举个例子Q可把代码直接放到html代码?看看执行效果^+^Q:

下面一D代码是试在微软的IE览器下的条件注释语句的效果

<!-- [if IE]> 
Ҏ条g判断Q这是Internet Explorer<br /> 
< ![endif]
-->
 
<!--
[if IE 5]> 
Ҏ条g判断Q这是Internet Explorer 5<br /> 
< ![endif]
-->
 
<!--
[if IE 5.0]> 
Ҏ条g判断Q这是Internet Explorer 5.0<br /> 
< ![endif]
-->
 
<!--
[if IE 5.5]> 
Ҏ条g判断Q这是Internet Explorer 5.5<br /> 
< ![endif]
-->
 
<!--
[if IE 6]> 
Ҏ条g判断Q这是Internet Explorer 6<br /> 
< ![endif]
-->

<!-- [if IE 7]> 
Ҏ条g判断Q这是Internet Explorer 7<br /> 
< ![endif]
-->
 
<!--
[if gte IE 5]> 
Ҏ条g判断Q这是Internet Explorer 5 或者更?lt;br /> 
< ![endif]
-->
 
<!--
[if lt IE 6]> 
Ҏ条g判断Q这是版于6的Internet Explorer<br /> 
< ![endif]
-->
 
<!--
[if lte IE 5.5]> 
Ҏ条g判断Q这是Internet Explorer 5.5或更?lt;br /> 
< ![endif]
-->

下面的代码是在非IE览器下q行的条件注?

<!-- [if !IE]><! -->
您用不是 Internet Explorer
< br  />
<!-- <![endif] -->
<!-- [if IE 6]><! -->
您正在用Internet Explorer version 6
< br  />
或者 一个非IE 览?/font>
< br  />
<!-- <![endif] -->

?
条g注释是在IE5.0/Win以后才被IE支持的,对于IE5以前的浏览器是无效的.



]]>
վ֩ģ壺 ɽ| | Դ| | ̩| | | | | | | | ޶| | ̶| SHOW| ζ| | ͷ| ʯ| | ̨| ƽ| | | | | | | | | | | | Ȫ| | Ͽ| ͼ| ͨ| | |