して振舞えるようです。OK参照とメソッド呼び出しの疑問それぞれ別の型であることがわかったのですが、そうするとメソッド呼び出しについて少し疑問が出てきます。持っているとして、以下のように呼び出せます。呼び出せることがわかります。A{}).method1();なんなら「参照の参照の......」でもmethod1は呼び出せます。解説があるので簡単に引用します。メソッド呼び出し構文receiver.method(...)は、以下と同じです。なにか処理を加えたあとに引数に渡していることがわかります。なにをしているかというと、ドキュメントにも書いてありますが、デリファレンスをします。ソースコードの該当箇所はこの辺です。古いですが、日本語ドキュメントのDerefのところでも同様の記述が確認できました。メソッド呼び出し時にも自動的に呼びだされます。)の挙動を設定するためのトレイトで、自分で設定することもできますが、参照型と可変参照型については以下のようになっています。呼ばれて最終的に所有型にたどり着きます。まとめ所有型と参照型は別の型だけど、メソッド呼び出し時に再帰的に参照が外されるので、参照型でも所有型のメソッドが利用できる。