разница и когда использовать getApplication (), getApplicationContext (), getBaseContext () и someClass.this

Я новичок в Android и пытаюсь понять разницу междуgetApplication(), getApplicationContext(), getBaseContext(), getContext() а такжеsomeClass.this и особенно когда использовать эти методы в следующих строках кода:

Когда я запускаю тост, в чем разница между ними и в каких случаях я их использую?

<code>Toast.makeText(LoginActivity.this, "LogIn successful", Toast.LENGTH_SHORT).show();
Toast.makeText(getApplication(), "LogIn successful", Toast.LENGTH_SHORT).show();
Toast.makeText(getApplicationContext(), "LogIn successful", Toast.LENGTH_SHORT).show();
Toast.makeText(getBaseContext(), "LogIn successful", Toast.LENGTH_SHORT).show();
</code>

то же самое с намерениями:

<code>Intent intent = new Intent(getApplicationContext(), LoginActivity.class);
Intent intent = new Intent(MenuPagina., LoginActivity.class);
Intent intent = new Intent(getBaseContext(), LoginActivity.class);
Intent intent = new Intent(getApplication(), LoginActivity.class);
</code>

Ответы на вопрос(4)

Ваш ответ на вопрос