【C# オブジェクト指向】参照型 part2-4

NO IMAGE

今回の内容はオブジェクト指向とあまり関係ないかもしれません.

ですが知ってほしい内容です!

参照型

変数の型には,値型(データ型)と参照型があります.

値型変数は,値そのもの(直接値)を格納するのに対し,

参照型変数は,値が置いてある場所(所在地情報)を格納します.

C#では,次のように分類されます.

f:id:pokoshirou:20181013144029p:plain

今回は,配列とクラスを例に参照型を扱ってみます.

配列

次のプログラムを例にしてみます.

ソースコード

実行結果

f:id:pokoshirou:20181013181405p:plain

n2にn1の参照先を代入した後,n1[2]の参照先の中身を40に代入して変更すると,n2[2]の値も40に変わっています.

このプログラムの流れを図に表してみます.

参照型変数は所在地情報を持っているので,仮に所在地情報を4桁のアルファベッドとして考えてみます.

f:id:pokoshirou:20181013183728p:plain
f:id:pokoshirou:20181013183739p:plain
f:id:pokoshirou:20181013183753p:plain

図にすると,動きが見えてくると思います.

クラス

クラスも配列と変わらないです!

次のプログラムを例にしてみます.

ソースコード

実行結果

f:id:pokoshirou:20181013184845p:plain

参照型なので,変数cの中身も変わっています.

図は省略します.

今回はここまで.

次回から継承に入ります!

補足は番外partで扱っていこうと思います.