Я просмотрел множество обучающих программ для Android по Интернету. В этих учебниках они используют this
контекст для контекста во всем мире. Я знаю, что означает this
ключевое слово в Java, но я не могу сделать это равным, с this
ключевым словом в Android-программировании. Например, в AlertDialog.Builder
, на сайте developer.android.com, есть только одна ссылка в параметрах контекста, но я не могу понять, что это здесь значит.
Если у вас есть Activity, вы можете использовать this
потому что:
this
текущий экземпляр класса Поэтому вы можете использовать свою текущую деятельность как контекст.
Смотрите здесь документ Acitivty
И здесь для объяснения this
Если вы знаете "this"
переменную, тогда вы также можете знать, что она содержит ссылку для текущего объекта .. поэтому, если какой-либо метод запрашивает объект Context, вы можете передать this
переменную только тогда, когда он расширяет классы, такие как Context или Activity .. Потому что Активность реализует контекст настолько сдержанно, что его контекст
Контекст текущего класса называется This in Android.
Вот еще один вопрос, объясняющий Context
. Поскольку действия и службы расширяют Context
, этот контекст является ссылкой на эту деятельность или услугу .
Ключевое слово this
– this
просто ссылка – внутри экземпляра класса – для себя.
В Android есть два распространенных применения этого «этого». Это не относится к Android, но они действительны на Java в целом.
this.getResources()
говорит, чтобы вызвать метод getResources()
в this
экземпляре. Эта часть обычно не нужна и используется неявно.
Foo.this.getResources()
можно вызвать из внутреннего класса. Это может быть удобно, если внутренний класс также определяет getResources()
, но вам нужна версия, определенная в другом классе.
this
ссылка на текущий объект
Вы можете использовать this
чтобы ссылаться на любой текущий экземпляр и любой экземпляр его суперкласса.
Если ваш класс расширяет действие . Это случай наследования. Ваш класс является подклассом, а класс Activity – родительским. То вы можете использовать это ключевое слово, чтобы получить экземпляр Activity beacause. Класс Activity – это суперкласс вашего класса. Это неявное литье
Также Класс Activity Context
как суперкласс. Поэтому вы можете ссылаться на экземпляр этого класса, используя это ключевое слово.
благодаря