[問題] 關于一個類聲明時有一個元素是這個類的實例的問題
class yilei
{
public int x = 2;
public int y = 7;
public int fangfa(int u, int v)
{
return u + v;
}
public int ziji()
{
return x * y;
}
public static yilei bb = new yilei();
}
這個類聲明的最后一個元素是這個類本身的一個實例,但聲明為靜態的,經驗證這個類
沒有錯誤,可以實例化,但如果不聲明為靜態的,就不能實例化,會產生無限遞歸。
我明白,當類實例化時,靜態元素先于類實例化之前產生,且只產生一次,但還是想不
清楚,實例化時應該是最先產生"bb"這個元素,但要產生"bb",則必須調用構造函數,但
調用構造函數時,又必須先產生“bb”元素,這也是無限遞歸啊。
為什了作為靜態變量就可以?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 221.5.69.43
→
05/26 03:01, , 1F
05/26 03:01, 1F
→
05/26 13:23, , 2F
05/26 13:23, 2F
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章