変数またはフィールドがイニシャライザなしで宣言される場合、システムは初期化されていない既定の変数をこれに与えます。この値は、Object のインスタンスまたはプロシージャの場合は
null 、
bool の場合は false、数値の場合は 0 を指定のデータ型にキャストしたものになります。
value クラス のインスタンスに関して、全てのフィールド自身に設定されたその型の初期化されていない値が生成されます。
高度な機能として、null に指定できない参照型(
#String ではなく
String など)の場合、これが返す値は、コンパイル時の型が指定された型でありながら実際には null ポインタとして表される値になります。これは、null が許可されていない状況で null 値を作成する「不正行為」なので、その使用は控えてください。上級ユーザーが、不正な値が一時的に必要な状況でコンストラクトを作成できるようにするだけの理由でサポートされています。