参照型変数とは
名前がないオブジェクトを、名前を持った変数を通して、オブジェクトを操作できる。
変数にオブジェクトを結び付けているともいえるが、あくまでオブジェクトの位置情報を指し示しているだけ。
基本型変数とは
変数が値(数値)そのものを保持する。数値を名前つきで扱えるようになる。
基本型変数と参照型変数の違い
StringBuilder sb = new StringBuilder(); StringBuilder sb2 = sb; sb.append("012"); sb2.append("345"); // 012345と出力される System.out.println(sb);
StringBuilderオブジェクトは1つ。変数名は違えど、同じオブジェクトの文字列に対して変更を加えている。
int i = 21; int k = i; i++; // iの値は22と出力される System.out.println(i); // kの値は21と出力される System.out.println(k);
基本型変数は、値をコピーしているだけ。よって、変数kには、変数iの値である21をコピーしただけ。