<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qqjianyue代碼工

    砌java代碼
    posts - 62, comments - 9, trackbacks - 0, articles - 10
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

         摘要: 基本javascript事件的列表介紹  閱讀全文

    posted @ 2009-05-22 15:51 Qzi 閱讀(374) | 評論 (0)編輯 收藏

         摘要: 首先介紹一個網站,我很多書本都是在上面下載的,很好。http://www.freebookspot.in/
    我現在學習的書本是:Pro Javascript Design Pattern

    首先簡單地為優(yōu)雅的Javascript代碼開個頭

    運用設計模式的三大原因:
    可維護性
    溝通交流性
    性能追求
    不使用設計模式的兩大原因:
    復雜性
    性能追求
      閱讀全文

    posted @ 2009-05-16 10:36 Qzi 閱讀(1821) | 評論 (2)編輯 收藏

    函數:
    import導入文件的路徑、類型、和title,title用來標識你是否已導入這個文件用。
    setStyle用于使導入的css有效,根據不同的瀏覽器,可能css生效的條件不同,反復無效與有效間切換,可以使得最后有效。
     1function $import(path, type, title) {
     2    var s, i;
     3    if (type == "js"{
     4        var ss = document.getElementsByTagName("script");
     5        for (i = 0; i < ss.length; i++{
     6            if (ss[i].src && ss[i].src.indexOf(path) != -1{
     7                return;
     8            }

     9        }

    10        s = document.createElement("script");
    11        s.type = "text/javascript";
    12        s.src = path;
    13    }
     else {
    14        if (type == "css"{
    15            var ls = document.getElementsByTagName("link");
    16            for (i = 0; i < ls.length; i++{
    17                if (ls[i].href && ls[i].href.indexOf(path) != -1{
    18                    return;
    19                }

    20            }

    21            s = document.createElement("link");
    22            s.rel = "alternate stylesheet";
    23            s.type = "text/css";
    24            s.href = path;
    25            s.title = title;
    26            s.disabled = false;
    27        }
     else {
    28            return;
    29        }

    30    }

    31    var head = document.getElementsByTagName("head")[0];
    32    head.appendChild(s);
    33}

    34
    35function setStyle(title) {
    36    var i, links, eflag = false;
    37    links = document.getElementsByTagName("link");
    38    for (i = 0; links[i]; i++{
    39        if (links[i].getAttribute("rel").indexOf("style"!= -1 && links[i].getAttribute("title")) {
    40            links[i].disabled = true;
    41            if (links[i].getAttribute("title").indexOf(title) != -1{
    42                links[i].disabled = false;
    43                eflag = true;
    44            }

    45        }

    46    }

    47    if (!eflag) {
    48        $import("skin/" + title + "/default.css""css", title);
    49        setStyle(title);
    50    }

    51}

    posted @ 2009-02-18 12:43 Qzi 閱讀(970) | 評論 (0)編輯 收藏

    最大公約數:使用輪轉相除法,它的原理是:(n1>n2)n1與n2的最大公約數等于n2與n1%n2的最大公約數,即
    gcd(n1, n2)=gcd(n2, n1%n2)
    最大公約數

    素數篩選法:原理是:
    1)0與1不是素數;
    2)素數的2倍以上倍數不是素數
    所以剔除這些剩下的就是素數了
    素數篩選法


    posted @ 2008-11-29 21:58 Qzi 閱讀(427) | 評論 (0)編輯 收藏

    http://wiki.ubuntu.org.cn/Tomcat%E8%AE%BE%E7%BD%AEJSP%E7%8E%AF%E5%A2%83

    posted @ 2008-11-28 22:37 Qzi 閱讀(299) | 評論 (0)編輯 收藏

    jms:
    (Java   Message   Service)    
      JMS定義了Java中訪問消息中間件的接口。    
       
      JMS只是接口,并沒有給予實現,實現JMS接口的消息中間件叫JMS   Provider,這樣的消息中間件可以從Java里通過JMS接口進行調用。    
       
      JMS   消息模型    
      JMS消息由兩部分構成:header和body。header包含消息的識別信息和路由信息,body包含消息的實際數據。    
       
      根據數據格式,JMS消息可分為以下五種:    
       
      BytesMessage   消息是字節(jié)流。    
      MapMessage   消息是一系列的命名和值的對應組合。    
      ObjectMessage   消息是一個流化的Java對象。    
      StreamMessage   消息是Java中的輸入輸出流。    
      TextMessage   消息是一個字符串,這種類型將會廣泛用于XML格式的數據。

    cms:
    Content Management System,CMS其實就是內容管理系統,,,可以理解為,CMS幫你把一個網站的程序部分的事全做完了 你要做的只是一個網站里面美工的部份,搞幾個靜態(tài)網頁模板,一個門戶級的網站就出來了!

    CMS,大概2004以前,如果想進行網站內容管理,基本上都是靠手工維護,但千變萬化的信息流,但沒有好的程序支持,還繼續(xù)靠手工完成是不可能的事,如果有一個好的系統來支撐你的網站,那將節(jié)省大量的人力物力,開發(fā)者就可能給客戶一個軟件包,可以用它定期人工修改網站。只要你配置安裝好,你的編輯,在線記者,更新員只要定期更新數據,剩下的事就交給CMS去處理

    posted @ 2008-11-14 08:14 Qzi 閱讀(200) | 評論 (0)編輯 收藏

    基本類型:
    布爾類型:boolean不能夠自動也不能強制轉換成其他類型,但是可以進行&,&&,|,||運算
    字符類型:char(16)其他基本類型不能夠自動轉變?yōu)樽址愋停梢詮娭妻D換為char,但是可以有截斷現象
    整形類型:byte(8),short(16),int(32),long(64)初始化的時候都是使用整數字面量直接賦值,但是byte與byte,short與short變量相加,默認都得到int的值,所以必須強制轉換才能夠返回原來類型的值(例如:(byte)(b1+b2))
    浮點類型:float(32),double(64)浮點數的字面量默認都是double類型,所以需要強制轉換成float才能夠初始化float,或者加上f或F后綴。(例如float f1 = 1.4F或者float f1 = (float)1.4

    整形還可以使用八進制(以0開頭的整形數字字面量)、十六進制(以0x開頭的整形字面量)初始化;
    浮點型:字面量不可以是八進制十六進制,但int可以自動轉化為浮點,所以仍然可以使用8進制16進制初始化,但是可以使用浮點計數法初始化,同樣可以加上f或d后綴,例1.23e+33F等
    字符型char可以直接使用

    unicode轉義符:
    \uXXXX 四個16進制的數,在文本里面就是代表著某個字符,所以可以'\uXXXX'初始化一個char,可以\u0022\uXXXX\u0022初始化一個String,因為剛好\u0022代表雙引號。當然\uXXXX不能是雙引號,否則就編譯出錯了。

    自動類型轉換:byte---short---int---long---float---double
    但是short與char不能夠相互自動轉換,但是可以相互強制轉換
    整型字面量可以初始化char,只要不超過65535的范圍,也就是也能夠使用8進制16進制初始化,但是整型變量不能夠賦值給char;
    char可以自動轉換成int及以上

    變量聲明與定義:
    int[] intArray;    //OK
    int intArray[];    //OK
    前面的加上 “= new int[變量or常量]” 都是可以的,但是“= new int(5)”是錯誤的
    int[] intArray[];  //OK,但是代表的是數組的數組
    int[5] intArray;  //False
    int intArray[5];  //False

    三目運算符:
    ?:返回不同類型問題,跟C++稍微不同,無論返回值在第一表達式還是第二表達式,返回值都是根據高階類型返回,例子:
    true ? 'a' : 9          返回結果是字符類型,所以字符類型是高階類型
    true ? 'a' : 9.0       返回結果是浮點類型(對于double和float都是),所以浮點比字符類型高階
    ture ? 9 : 9.0        返回結果是浮點類型,明顯
    true ? "abc" : 9     返回結果是字符串類型,因為字符類型較高階
    true ? 對象1實例 : 對象2實例      返回結果是最大共同父類,所以如果其中一個是另外一個的子類,那么就返回父類,如果互不繼承關系,則返回Object。

    String總結:
    首先聲明,==判斷是判斷對象引用的實例是否相同,即實例是否真正在相同的位置
    Object默認的equals方法與==是一樣的(就是引用相同實例),String類重寫equals方法和hashCode方法,只要內容相同就返回ture(一般自己寫的類也建議重寫equals方法和hashCode方法)。所以這時候==與equals就具有不相同意義了。
    http://www.javaeye.com/topic/122206
    1. 首先String不屬于8種基本數據類型,String是一個對象。
     因為對象的默認值是null,所以String的默認值也是null;但它又是一種特殊的對象,有其它對象沒有的一些特性。
    2. new String()和new String("")都是申明一個新的空字符串,是空串不是null;
    3. String str="string";
    String str1="string";
    String str2=new String ("string");
    String str3="str" + new String("ing");
    關于常量池概念,java虛擬機在常量池中只維持一個字符串的示例,所以str與str1引用都是引用常量池里面的共同實例,關鍵的是只有常量池里面的String才是唯一的,new空間里面的并不是。
    但是str2,str3(而且str2與str3的空間地址也肯定不一樣的,引用的是新建空間堆里的實例,所以str==str1,str!=str2,str1!=str2,str1!=str3,str2!=str3
    但是它們幾個使用equals都是返回true的,因為String類的hashCode函數根據內容返回hashCode碼,這個碼相同,則equals就返回true了,具體的equals與hashCode解釋可以參照《java核心技術 卷1 基礎知識》
    注意:成員函數intern() :
    當一個String實例str調用intern()方法時,Java查找常量池中是否有相同Unicode的字符串常量,如果有,則返回其的引用,如果沒有,則在常量池中增加一個Unicode等于str的字符串并返回它的引用;
    所以:
    String str1="string";
    String str2=new String ("string");
    str1==str2.intern()          返回true

    posted @ 2008-11-09 10:26 Qzi 閱讀(327) | 評論 (0)編輯 收藏

    參考java core總結,java 5與之前的不同包括:

    1.泛型編程

    2.包裝類的自動打包拆包

    3.格式化輸出:增加printf函數

    4.StringBuilder類:非線程安全的StringBuffer

    5.可變參數列表:聲明方式public void mymethod(String arg1,Object… args),記住...

    6.增強的for循環(huán):for(type variable:數組或數組列表)

    7.靜態(tài)導入:import static 導入類 就可以使用本地方法一樣使用導入類的靜態(tài)方法

    8.協變的返回類型,即override的函數可以返回原函數返回類型的子類型,而不是要求相同返回類型

    9.控制臺輸入

    10.內容窗格授權:JframeJDialogJApplet可以使用addsetLayout函數,以前需要getContentPane().add(component)getContentPane().setLayout(manager);

    posted @ 2008-10-21 20:45 Qzi 閱讀(245) | 評論 (0)編輯 收藏

     

    測試:定義為在受控的條件下對應用程序進行操作,以對程序質量進行評估

     

    質量:可以定義為產品的優(yōu)點(特性)減去其中存在的問題(bug

     

    測試的重要性:測試的反面是不測試,即把程序驗證工作都丟到軟件開發(fā)完畢或者交付給客戶。辯駁觀點是:越遲發(fā)現程序的問題,修復其的成本越高。

     

    測試人員做什么:保證程序的bug是影響最小的bug,將程序的bug降到最小風險。

     

    測試與QAQuality Assurance)的區(qū)別:QA關注軟件工程的過程,通過改善過程提高軟件的質量,他不對軟件進行剖析以找出問題,而只是驗證軟件是否滿足一套已定義的質量標準和用戶協議。

    測試更關心的是剖析軟件,觀察軟件的運行,并在質量內部層次進行報告,發(fā)現軟件的bug

     

    測試人員素質:驗證、檢測、防范、反映。

     

    bug:是沒有預料到的行為,軟件做了某些認為是錯誤的事情。

     

    自動化測試:使用軟件工具來代替手工進行的一系列動作,通常使用腳本或者代碼驅動應用程序,可以通過可視用戶界面完成,或者直接命令模擬客戶端功能。

    構建版本驗證測試(Build verification test, BVT)針對軟件最新版本而做的一些列自動化測試;回歸測試(Regression testing)測試以前曾經正常工作的場景,確保代碼修改后沒有打破原來的功能或者產生其他方面的副作用。

    posted @ 2008-10-21 20:43 Qzi 閱讀(228) | 評論 (0)編輯 收藏

    線程生命周期:新建線程、排隊、運行、等待、死亡,明顯包含了下面線程生存期的三種狀態(tài)。

    線程生存期三種狀態(tài):就緒、運行、等待(掛起)

    與線程相關的一些函數區(qū)別:

    線程暫停或者停止:stopsuspendsleepwait

    成員方法stop會解除由線程獲得的所有鎖定,并且使線程進入死亡狀態(tài),相當于run方法的被強制中斷;

    成員方法suspend仍然持有線程之前的所有鎖定,并且使線程進入等待狀態(tài),需要使用resume重激活;

    靜態(tài)方法 sleep不釋放對象鎖,可以指定暫停線程的mini Seconds數,暫停當前線程;

    成員方法wait導致本線程放棄對象鎖,進入掛起狀態(tài),并且需要通過notify或者notifyAll來使線程進入就緒狀態(tài);

     

    線程池機制:

    線程池管理器:創(chuàng)建銷毀線程池、將工作線程放入線程池

    工作線程:執(zhí)行任務(即任務接口)的線程,在沒有任務時候等待

    任務隊列:提供線程申請緩沖機制

    任務接口:規(guī)定任務的入口、任務執(zhí)行完后的收尾工作、任務的執(zhí)行狀態(tài)

    posted @ 2008-10-21 20:43 Qzi 閱讀(268) | 評論 (0)編輯 收藏

    僅列出標題
    共5頁: 上一頁 1 2 3 4 5 下一頁 
    主站蜘蛛池模板: 免费大黄网站在线观看| 亚洲AV无码一区二区乱子仑| 亚洲AV日韩精品一区二区三区 | 毛片a级三毛片免费播放| 国产日韩一区二区三免费高清| 亚洲avav天堂av在线网毛片| 亚洲国产精品成人久久久| 亚洲人成电影福利在线播放| 亚洲乱码中文字幕综合| 国产一级高清免费观看| 少妇高潮太爽了在线观看免费| 91麻豆国产免费观看| 成人网站免费看黄A站视频| 国产va免费精品| 免费国产草莓视频在线观看黄| 亚洲精品V天堂中文字幕| 午夜在线a亚洲v天堂网2019| 亚洲三级中文字幕| 亚洲人成在线电影| 精品日韩亚洲AV无码| 亚洲va久久久噜噜噜久久| 亚洲中文字幕无码永久在线 | 亚洲av无码av在线播放| 2020国产精品亚洲综合网| 亚洲videosbestsex日本| 亚洲视频免费在线看| 91精品国产亚洲爽啪在线影院| 亚洲国产天堂久久综合网站| 亚洲AV永久无码区成人网站| 亚洲国产成人久久精品动漫| 亚洲国产精品无码久久久不卡| 亚洲精品无码成人片久久| 国产亚洲精久久久久久无码| 久久久久亚洲av无码专区蜜芽| 亚洲av福利无码无一区二区| 亚洲专区先锋影音| 亚洲国产成a人v在线| 国产精品亚洲专区在线观看| 亚洲中文字幕无码久久2020 | 成年男女免费视频网站| 日本特黄a级高清免费大片|