我一直在試圖撥打以下幾點:Android的靜態VS非靜態問題
public static void startfile() {
Log.i("File Works", "working2 ");
try {
FileOutputStream fos = openFileOutput("sdcard/sdtext.txt", MODE_WORLD_WRITEABLE);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我得到的告訴我說:「不能讓一個靜態參考非靜態方法openFileOutput錯誤(字符串,INT )從類型的ContextWrapper「
所以我搜索了該錯誤,發現this site。
我實現了這個:
public static void startfile(Trackfile O) {
Log.i("File Works", "working2 ");
O.nonstatstartfile();
}
public void nonstatstartfile(){
Log.i("File Works", "nonStat");
try {
FileOutputStream fos = openFileOutput("sdcard/sdtext.txt", MODE_WORLD_WRITEABLE);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
當我從另一個調用類得到一個空指針錯誤startfile。我需要發送什麼參數以避免空指針錯誤?
那麼,爲什麼你需要這個方法是靜態的,如果你在裏面調用一個非靜態方法? – Egor
你從另一個班級使用它嗎? – Markonato
是的,我從另一個類的電話 –