Согласно этот ответ или документация по Android есть несколько способов получить контекст в приложении и передать его другому классу / метод / безотносительно.
Допустим, я нахожусь в действии Foo и мне нужно передать контекст конструктору Bar.
Bar bar = new Bar(Foo.this);
Bar bar2 = new Bar(this); //same as first i guess
Bar bar3 = new Bar(getApplicationContext());
Bar bar4 = new Bar(getBaseContext());
Bar bar5 = new Bar(MyApp.getContext); // get context statically
Принимая во внимание утечки памяти, скорость, общую производительность, что будет лучше между всеми этими возможностями?