1. 程式人生 > >動態型別語言&動態語言

動態型別語言&動態語言

首先,這是兩個不同的概念

動態語言 dynamic programming language

程式執行時,允許改變程式結構(例如引進新函式、刪除舊函式)或變數型別。
從這個觀點來看,Perl、Python、Ruby是動態語言,C++、Java、C#不是動態語言

動態型別語言 dynamically typed language

在執行期檢查變數型別的語言,也就是在編寫程式碼的時候可以不指定變數的資料型別,例如Python、Ruby。動態型別語言中,變數沒有型別,而值有型別

靜態型別語言 statically typed language

變數的資料型別在編譯期宣告以後,不能再改變其資料型別,即變數在使用前必須先宣告型別。檢查在編譯期進行,好處是編譯期提前檢查可能出現的錯誤,例如C++、Java