弱型別 強型別 動態 靜態語言的區別

2021-10-12 14:08:57 字數 414 閱讀 9591

舉個例子:

var a =5;

var b = "5";

sumresult = a +b;

minresult = a -b;

輸入sumresult的答案不是10,而是55,再次是將a的型別轉化為了字串,然後進行拼接。輸入minresult的答案是0,是將b的型別轉化為了數字,然後進行減法。

強型別語言和弱型別語言區別

無論是強型別語言還是弱型別語言,判別的根本是是否會隱性的進行語言型別轉變。強型別語言在速度上略遜於弱型別語言,但是強型別定義語言帶來的嚴謹性又能避免不必要的錯誤。

上乙個圖就很清晰了

強型別,弱型別,靜態型別,動態型別的區別

型別系統的一些概念,眾說紛紜,使用上也比較亂。有些東西,甚至不好嚴格定義。以下算學術界的一種相對 嚴格 的說法。首先了解一下基本概念 有了上面的概念,再討論強 弱型別,靜態 動態型別 偏向於不容忍隱式型別轉換,弱型別相對于強型別來說型別檢查更不嚴格,比如說允許變數型別的隱式轉換,允許強制型別轉換等等...

強型別與弱型別,靜態型別和動態型別

首先強弱是相對的。強型別 每個變數和物件都必須宣告型別,在編譯時確定好型別了,執行時不能更改。偏向於不容忍隱式型別轉換。譬如說haskell的int就不能變成double。弱型別 編譯時不確定型別,執行時根據語義確定是哪種型別。通俗地說,弱型別偏向於容忍隱式轉換,把不同型別的變數放在一起運算。靜態型...

動態語言和靜態語言 強型別語言和弱型別語言

1 動態語言和靜態語言 通常我們所說的動態語言 靜態語言是指動態型別語言和靜態型別語言。1 動態型別語言 動態型別語言是指在執行期間才去做資料型別檢查的語言,也就是說,在用動態型別的語言程式設計時,永遠也不用給任何變數指定資料型別,該語言會在你第一次賦值給變數時,在內部將資料型別記錄下來。pytho...