(值類型引用類型)和null的關系,引用null
1.null null表示變量沒有指向任何對象。
2.值類型 包括 bool、結構體、枚舉、int、double、float等等 。在.NET中值類型都繼承自ValueType。
3. 引用類型 包括 字符串、數組、類、接口等。在.NET中引用類型都繼承自Object。
4. 引用類型和null Person p1 = new Person(); //定義的p1此時沒有任何指向了! p1 =null; p1.SayHi(); —————————————— 執行完上面的代碼,直接就拋出了一個異常我們非常熟悉的 未將對象引用到對象實例NullReferenceException 這就是引用類型和null的關系,當一個引用類型=null了以後,表示他沒有了任何指向。
5. 值類型與null //如果在項目中我這樣寫。 int num = null; //就不用等著拋異常了,因為編譯器會直接報錯的。因為值類型不能等於null。 如果我非讓 int num = null;怎麼辦呢?請看第6條。
6.可空數據類型。 在.NET中,默認情況下。 可以為空的數據類型 是 引用類型。 不可以為空數據類型 是 值類型。 如何讓值類型可以為控呢? 可以這樣寫。 //加了一個?表示讓int類型 可空。稱之為可空類型的int。 int ? num = null;//這種寫法在數據庫應用中的實體類中使用廣泛。數據庫中的某個字段可空, //那麼實體類中的屬性也應該對應著可空。用的就是這個。