nullでない変数がnullを持たないという保証は本当にないようです。nullにできないプロパティが1つあるクラスがあるとします。
public class Foo
{
public Foo(string test)
{
Test = test;
}
public string Test {get;set;}
}
これはnullにできなくなったように見えるかもしれません。ただし、このクラスをnull許容コンテキストを使用しない別のライブラリで参照する場合、そこにnullを送信することを妨げるものはありません。
それは正しいですか、またはおそらくこれを確実にするいくつかの実行時チェックがありますか?
public void Foo(string test){...}
かpublic Foo(string test){...}
?