類型綁定

作者: snandy  來源: 博客園  發布時間: 2011-03-07 10:15  閱讀: 441 次  推薦: 0   原文鏈接   [收藏]  

  在程序中引用一個變量前,變量名 必須被 綁定 到一種數據類型上。如 名字 abc 得知道它是語言中的基本類型(整型數字、浮點數字、布爾、字符串)或對象類型(內置類、自定義類)。根據 綁定時間 的早晚分為靜態類型綁定和動態類型綁定。

  一、靜態類型綁定

  顯示聲明和隱式聲明(JS等除外)都產生對類型的靜態綁定。

  二、動態類型綁定

  動態類型綁定時,變量的類型不是由聲明語句來說明的,也不是像Fortain中通過名字的拼法來確定。而是通過賦值語句給變量賦值時,變量才與類型綁定的。與靜態類型綁定不同,動態類型綁定給程序設計帶來了極大的靈活性。如使用動態類型綁定的語言很容易寫出一個通用程序。

  如求兩個數的和

// JavaScript
function sum(x,y){
    return x+y;
}

// Java
int sum(int x, int y){
    return x + y;
}

  JavaScript是動態類型綁定的,可以傳整數型,小數型甚至字符串。但Java中只能傳整數卻不能是小數。又如Javascript中,先將一個數組賦值給變量,后又將數字賦值給該變量。

list = [11,22,33];
list = 5;

  這不會出錯。PHP 也是動態類型綁定的。動態類型綁定有兩個缺點

  1,程序不可靠,相對于靜態類型綁定的編譯器而言,它發現錯誤的能力較弱。

  2,代價較高,類型檢測必須到運行時。

  最后,具有變量動態類型綁定的語言一般采用單純的解釋期而非編譯器。

0
0
 
標簽:類型綁定
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()