1. 靜態(tài)內(nèi)部類可以不依賴于外部類實例被實例化,普通內(nèi)部類需要在外部類實例化之后才能實例化。
訪問靜態(tài)內(nèi)部類:
A.StaticB b = new A. StaticB()
訪問普通內(nèi)部類:
A.CommonC c= new A().new CommonC();
2. 靜態(tài)內(nèi)部類不能訪問外部類中的非靜態(tài)變量和非靜態(tài)方法,普通內(nèi)部類可以訪問外部類中的所有成員和方法。
3. 靜態(tài)內(nèi)部類內(nèi)部可以有靜態(tài)變量和靜態(tài)方法,普通內(nèi)部類內(nèi)不可以有靜態(tài)變量和靜態(tài)方法。
4.?內(nèi)部類可以被聲明為private, public, protected, or package private. 但是封閉類(外部類)只能被聲明為public or package private。