Mam pewien kod w jednej z moich aplikacji na Androida, która łapie SQLException, ale ostatnio odkryłem, że nie łapie SQLiteException. Najwyraźniej SQLiteException jest dzieckiem o wyjątku SQLException, więc dlaczego nie jest on przechwytywany? Oto kod, którego używam.Dlaczego SQLException nie przechwytuje SQLiteExcpetion?
try {
... // something here that will throw an SQLiteException
} catch (SQLException e) {
e.printStackTrace();
}
Czy moje założenie jest prawidłowe, że powinienem złapać SQLiteException?
Jeśli to ma znaczenie, używam tego kodu nie wewnątrz działania, ale wewnątrz klasy, która rozszerza klasę Application
.
Jako notatkę dodatkową, dodałem dodatkową catch(Exception e){}
, aby sprawdzić, czy to zadziała i rzeczywiście działało zgodnie z oczekiwaniami.
dość interesujące pytanie właściwie ... ponieważ jest to podklasa klasy SQLException: http://developer.android.com/reference/android/database/sqlite/SQLiteException.html –