按JLS:內部類允許靜態字段和非常量靜態表達式 - 爲什麼?
內部類是一個嵌套類,它是不明確或隱含 聲明爲static。內部類可能不會聲明靜態初始化程序 或成員接口。
但我的下面的代碼編譯成功。
class A {
interface B {
class C { // Inner class having static variables.
static int d; // Static variable
static {
}
}
}
}
有一個人幫助我理解這種行爲
我很確定'C'隱式地是'static',而不是一個內部類。 –
您的嵌套類**被隱式聲明爲靜態。因爲接口不能有內部類。接口B是相同的,這是隱式靜態的。 –