title: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
body: <p>I am developing an app with 5 fragments. In all that fragments i have listviews with data retrieved from sqlite. I have done this, but I got errors in                                         :</p>
  
  <pre><code>09-04 23:13:22.226 20797-20797/? E/AndroidRuntime: FATAL EXCEPTION: main
  
                                                     java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference
                                                         at com.smartfon_apps.timetable_sch32.Db$DbHelper.onCreate(Db.java:68)
                                                         at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:251)
                                                         at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:187)
                                                         at com.smartfon_apps.timetable_sch32.Db.getAllItems(Db.java:38)
                                                         at com.smartfon_apps.timetable_sch32.MondayFragment.onCreateView(MondayFragment.java:33)
                                                         at android.support.v4.app.Fragment.performCreateView(Fragment.java:2074)
                                                         at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)
                                                         at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1286)
                                                         at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:758)
                                                         at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:1632)
                                                         at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:637)
                                                         at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143)
                                                         at android.support.v4.view.ViewPager.populate(ViewPager.java:1237)
                                                         at android.support.v4.view.ViewPager.populate(ViewPager.java:1085)
                                                         at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1611)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:671)
                                                         at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90)
                                                         at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1319)
                                                         at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:736)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.widget.FrameLayout.onMeasure(FrameLayout.java:430)
                                                         at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:135)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1438)
                                                         at android.widget.LinearLayout.measureVertical(LinearLayout.java:724)
                                                         at android.widget.LinearLayout.onMeasure(LinearLayout.java:615)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.widget.FrameLayout.onMeasure(FrameLayout.java:430)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1438)
                                                         at android.widget.LinearLayout.measureVertical(LinearLayout.java:724)
                                                         at android.widget.LinearLayout.onMeasure(LinearLayout.java:615)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5466)
                                                         at android.widget.FrameLayout.onMeasure(FrameLayout.java:430)
                                                         at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2636)
                                                         at android.view.View.measure(View.java:17496)
                                                         at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2031)
                                                         at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1193)
                                                         at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1400)
                                                         at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1078)
                                                         at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5875)
                                                         at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
                                                            at android.view.Choreographer.doCallbacks(Choreographer.java:580)
                                                         at android.view.Choreographer.doFrame(Choreographer.java:550)
                                                      at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java
  </code></pre>
  
  <p>My DB.java</p>
  
  <pre><code>package com.xxx.xxx;
  
  import java.io.IOException;
  
  import org.xmlpull.v1.XmlPullParser;
  import org.xmlpull.v1.XmlPullParserException;
  
  import android.content.ContentValues;
  import android.content.Context;
  import android.content.res.Resources;
  import android.content.res.XmlResourceParser;
  import android.database.Cursor;
  import android.database.sqlite.SQLiteDatabase;
  import android.database.sqlite.SQLiteOpenHelper;
  import android.util.Log;
  
  public class Db {
  
  public static final String CLASS_COLUMN = "clas";
  public static final String NUMBER_COLUMN = "number";
  public static final String NAZVANIE_COLUMN = "nazvanie";
  public static final String DAY_COLUMN = "day";
  public static final String TIME_COLUMN = "time";
  public static final String ROOM_COLUMN = "room";
  public static final String TEACHER_COLUMN = "teacher";
  public static final String DATABASE_NAME = "lessons_database.db";
  public static final String TABLE_NAME = "lessonstable";
  private static final int DATABASE_VERSION = 1;
  
  private DbHelper mDbHelper;
  private SQLiteDatabase mDb;
  
  public Db(Context context) {
      mDbHelper = new DbHelper(context);
  }
  
  public Cursor getAllItems() {
      mDb = mDbHelper.getReadableDatabase();
      String where = "clas = " + "'1А'";
      return mDb.query(TABLE_NAME, null, where, null, null, null, null);
  }
  
  public void close() {
      if (mDbHelper != null) mDbHelper.close();
      if (mDb != null) mDb.close();
  }
  
  public class DbHelper extends SQLiteOpenHelper {
  
      public Context fContext;
  
      public DbHelper(Context context) {
          super(context, DATABASE_NAME, null, DATABASE_VERSION);
      }
  
      @Override
      public void onCreate(SQLiteDatabase db) {
          // TODO Auto-generated method stub
          db.execSQL("CREATE TABLE " + TABLE_NAME + " ("
                  + CLASS_COLUMN + " TEXT, " + NUMBER_COLUMN + " TEXT,"
                  + NAZVANIE_COLUMN + " TEXT, " + DAY_COLUMN + " TEXT,"
                  + TIME_COLUMN + " TEXT, " + ROOM_COLUMN + " TEXT,"
                  + TEACHER_COLUMN + " TEXT" + ");");
  
          // Добавляем записи в таблицу
          ContentValues values = new ContentValues();
  
          // Получим файл из ресурсов
          Resources res = fContext.getResources();
  
          // Открываем xml-файл
          XmlResourceParser _xml = res.getXml(R.xml.lessons_records);
          try {
              // Ищем конец документа
              int eventType = _xml.getEventType();
              while (eventType != XmlPullParser.END_DOCUMENT) {
                  // Ищем теги record
                  if ((eventType == XmlPullParser.START_TAG)
                          &amp;&amp; (_xml.getName().equals("record"))) {
                      // Тег Record найден, теперь получим его атрибуты и
                      // вставляем в таблицу
                      String clas = _xml.getAttributeValue(0);
                      String number = _xml.getAttributeValue(1);
                      String nazv = _xml.getAttributeValue(2);
                      String day = _xml.getAttributeValue(3);
                      String time = _xml.getAttributeValue(4);
                      String room = _xml.getAttributeValue(5);
                      String teacher = _xml.getAttributeValue(6);
  
                      values.put("clas", clas);
                      values.put("number", number);
                      values.put("nazvanie", nazv);
                      values.put("day", day);
                      values.put("time", time);
                      values.put("room", room);
                      values.put("teacher", teacher);
                      db.insert(TABLE_NAME, null, values);
                  }
                  eventType =
                          _xml.next();
              }
          }
          // Catch errors
          catch (XmlPullParserException | IOException e) {
              Log.e("Test", e.getMessage(), e);
          } finally {
              // Close the xml file
              _xml.close();
          }
  
      }
  
      @Override
      public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
          // TODO Auto-generated method stub
          //Log.w("TestBase", "Upgrading database from version " + oldVersion + " to " + newVersion + ", which will destroy all old data");
          db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
          onCreate(db);
      }
  }
  </code></pre>
  
  <p>}</p>