And:對兩個Boolean表達式執行邏輯和。
AndAlso:與AndAlso相似,關鍵差別是AndAlso顯示短路行爲,若是AndAlso中的第一個表達式爲False,則不計算第二個表達式。
Or:對兩個Boolean表達式執行邏輯或。
OrElse:與Or相似,關鍵差別是OrElse顯示短路行爲,若是OrElse中的第一個表達式爲True,則不計算第二個表達式。
此時才明白上面的代碼是兩個判斷都執行了,哪怕obj爲Nothing時,obj.IsDisposed也會執行到,天然就會出現Null異常了,把Or改爲OrElse後問題解決。
VB.net 與 C# 的對應
And 對應 &&
AndAlso 對應 &
Or 對應 ||
OrElse 對應 | .net