【java】intentの記述の「this」って「このプロジェクトの」って解釈でいいのでしょうか?

Java | Android開発39閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

ThanksImg質問者からのお礼コメント

なるほど。 少し理解が深まりました。 ありがとうございます。

お礼日時:10/21 16:10

その他の回答(6件)

0

>「このプロジェクトの」って意味でいいんですかね? まったく違います。 Androidアプリケーションにおける this は、 ややこしいです。 一問一答でわかる回答など、たぶん無理。 学習するしかない。 1. Java, オブジェクト指向パラダイム これが理解できてることが、大前提。 this 自体は、Java言語の 予約語 であり、概念物。 2. Androidのアプリケーションフレームワーク俯瞰知識 class Context の意味 # 歴史経緯のせいなんだろうけど、余り好きになれないきたない設計(今となっては)。 # なんでもかんでもContext Activity, Service, ... 等はみなContext. こいつらのインスタンスメソッド内でコード書くで済んでる うちは、 > とりあえず丸覚えで今まで流してた... で済むかもしれないが、まぁ、危ないです。 とみおさん ご回答 が、ここに触れてる内容. Android本家サイトの、開発者向けチュートリアル にフレームワークの説明ドキュメント、あります。 ここ読むのが正攻法だと思います。 P.S. Android特有な thisのややこしさ は、他にもあります。 無名クラス多用, OuterなActivity等を強引に参照する クラス名.this とか。

0

thisはプロジェクトっていうか、『このオブジェクトのメンバにアクセスする』っていう意味です。 たとえば this.num = 100; とあったら、『オブジェクト自身が持つnumフィールド』に設定しているという事です。

特にフィールドはオブジェクトごとに違いますよね。 同じクラスから生成していても、オブジェクトが違うわけだから。 『俺の』メンバにアクセス…っていう感じです。

0

「java this super」で検索するとあると思います。 クラス内で設定したフィールドを参照する場合thisを付けると思います。 メソッド内で同じ変数名を指定することもできるので、thisを付けて参照さきをクラスのフィールドにすると思います。 public class Hoge{ private String hogehoge; // クラス変数 public void hogeMethod(){ String hogehoge; // メソッド内変数 hogehoge = "hogehoeg"; // メソッド内変数 this.hogehoge = "hogehoge"; // クラス変数 } } (findbugsの設定によって、警告が出た気がします。) あと、継承した場合、super.変数名、とthis.変数名で使い分けたりしたと思います。