では、toString が常に呼び出されないのはなぜでしょうか? これは Android API を使用した例です。
例えば
@Override
public void onItemSelected(AdapterView<?> adapterView, View view,
int position, long id) {
Toast.makeText(this, adapterView, Toast.LENGTH_LONG).show();
}
コンパイルされません。ただし、次のように変更すると
@Override
public void onItemSelected(AdapterView<?> adapterView, View view,
int position, long id) {
Toast.makeText(this, adapterView.toString(), Toast.LENGTH_LONG).show();
}
そうなる。実際の違いは何ですか?