內(nèi)部類是定義在其他類內(nèi)部的類。使用內(nèi)部類的原因有以下四個(gè):

  • 內(nèi)部類對(duì)象能夠訪問(wèn)創(chuàng)建它的對(duì)象的實(shí)現(xiàn)——包括那些私有數(shù)據(jù);
  • 內(nèi)部類能夠隱藏起來(lái),不為同一包中的其他類所見;
  • 匿名內(nèi)部類可以方便地定義運(yùn)行時(shí)回調(diào);
  • 使用內(nèi)部類在編寫事件驅(qū)動(dòng)的程序時(shí)用起來(lái)很方便。

局部類不會(huì)使用訪問(wèn)指示符(如public或者private)來(lái)聲明。它們的范圍總是限定在聲明它們的程序快中。

 

你可以在運(yùn)行時(shí)使用代理創(chuàng)建實(shí)現(xiàn)了一組給定接口的新類。只有在編譯時(shí)無(wú)法確定要實(shí)現(xiàn)哪些接口時(shí),才有必要使用代理。

 

Java中的頂層窗口(即那些沒(méi)有包含在其他窗口中的窗口)被稱為框架。

框架是一個(gè)容器。這意味著一個(gè)框架可以容納按鈕、文本域等其他用戶界面組件。

 

JFrame類中幾個(gè)可能最為重要的方法:

  • dispose方法:關(guān)閉窗口并收回用于創(chuàng)建窗口的任何系統(tǒng)資源;
  • setIconImage方法:當(dāng)窗口最小化(在Java中常常稱作圖標(biāo)化)時(shí),把一個(gè)Image對(duì)象作為圖標(biāo);
  • setTitle方法:改變標(biāo)題欄中的文字;
  • setResizable方法:使用boolean參數(shù)來(lái)決定框架大小是否能被用戶改變。