在一般的非靜態方法中獲取類路徑,用:
this.getclass().getresource("/").getpath().substring(1);
如何在靜態方法中獲取類路徑?由於是靜態方法,所以無法獲得類的例項,如果用:
類名.class.getclass().getresource("/").getpath().substring(1);
會報空指標異常;如果用:
類名.class.getclassloader().getresource("/").getpath().substring(1);
在本地測試可以,專案部署後就不行了。解決辦法是,可以使用匿名內部類的方式(參考:
string path = new object()
}.getpath().substring(1);
另外,
this.getclass().getresource("/").getpath().substring(1);
獲取的是主目錄(classes目錄),而
this.getclass().getresource("").getpath().substring(1);
獲取的是檔案路徑。 靜態屬性 類方法 靜態方法
靜態屬性 既可以訪問例項屬性也可以訪問類屬性 self 1 靜態屬性 資料屬性 2 class room 3 def init self,name,owner,width,length,height 4 self.name name 5 self.owner owner 6 self.width w...
靜態屬性 類方法 靜態方法
class room tag 1 def init self,name,owner,width,length,heigh self.name name self.width width self.owner owner self.length length self.heigh heigh 既可以訪...
類方法,靜態方法
coding utf 8 class test object walk 為普通方法只能被物件instance呼叫,play 為靜態方法可以被物件和classname呼叫,eat為類方法,可以被物件和classname呼叫。此外pep8中一種程式設計風格,self通常用作例項方法的第一引數,cls通常...