No enclosing instance of type JDStudent is acAcessible. Must qualify the allocation with an enclosin
No enclosing instance of type JDStudent is acAcessible. Must qualify the allocation with an enclosing instance of type JDStudent (e.g. x.new A() where x is an instance of JDStudent).
E(e.g. x.new A() where x is an instance of E). E指代我寫的那個內部類。
根據提示,沒有可訪問的內部類E的實例,必須分配一個合適的內部類E的實例(如x.new A(),x必須是E的實例。)看著這句提示,我就納悶了,我已經用new實例化了這個類,為什么還不行呢。
于是百度谷歌了一下相關資料。原來我寫的內部類是動態的,也就是開頭以public class開頭。而主程序是public static class main。在Java中,類中的靜態方法不能直接調用動態方法。只有將某個內部類修飾為靜態類,然后才能夠在靜態類中調用該類的成員變量與成員方法。所以在不做其他變動的情況下,最簡單的解決辦法是將public
class改為public static class.
今天記錄下來
總結
以上是生活随笔為你收集整理的No enclosing instance of type JDStudent is acAcessible. Must qualify the allocation with an enclosin的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java基础知识讲解(一)数据类型和运算
- 下一篇: 图书资料管理课程设计(附源码和连接)