android No enclosing instance of type

android No enclosing instance of type,產生的原因在於內部類的使用方法上的細節問題:主要是因爲在A.class當中嵌套了B.clas而且兩個類都爲public時,在調用B.class的時候就會出現出現提示:“沒有可訪問的內部類E的實例,必須分配一個合適的內部類E的實例(如x.new A(),x必須是E的實例。)”這樣子解決的方法大概有兩種,
一:
把B.class改成static的靜態類,博文來源:http://blog.sina.com.cn/s/blog_6400e5c501019sl3.html
個人不建議使用這種方法,這樣子會導致B.class當中如果需要調用到A.class當中的其他的方法或變量那麼也會需要相應的更改成static,工作量大而且和實際需求都不服!那麼就是我們的第二種了
二:先實例化A.class——在使用A.lass的實例化對象來new一個B.class
個人遇到問題時的代碼如下:
CClientSessionBiaoqing client = new CClientSessionBiaoqing();
CClientSessionBiaoqing.DownloadAsyncTask asynTask=client.new DownloadAsyncTask(getCurrentBar(info.iId));
A.class——CClientSessionBiaoqing.class
B.class——DownloadAsyncTask.class

發佈了24 篇原創文章 · 獲贊 6 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章