根据此答案或安卓文档,有多种方法可以获取应用程序的上下文并将其传递给其他类/方法/需要的任何内容。
假设我现在在Foo Activity中,需要将上下文传递给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
考虑到内存泄漏、速度和一般性能,所有这些可能性之间哪种方式更好?