靜態語言代表:C,C++,Java,C#等
動態語言代表:Python,Ruby等
動態語言和靜態語言的區別1:
靜態語言是在編譯時變量的數據類型即可確定的語言,多數靜態類型語言要求在使用變量之前必須聲明數據類型
動態語言是在運行時確定數據類型的語言。變量使用之前不需要類型聲明,通常變量的類型是被賦值的那個值的類型
總結:靜態語言使用前必須聲明類型,如int a等;而動態語言可以直接使用變量a,無需提前聲明
動態語言和靜態語言的區別2:
靜態類型語言編譯時會進行類型匹配檢查,所以不能給變量賦予不同類型的值
動態類型語言的變量類型在運行期是可變的,這意味着對象的多態性是與生俱來的
總結:在靜態語言中,如果已經有int a,此時令a=‘hello’,則會報錯;而在動態語言中,即使有a=3,a的值也可以隨便更改為2.343,'hello'等
與靜態語言相比,動態語言更靈活,但是靜態語言比動態語言在大型項目上更安全