如同一個(gè)Employee對(duì)象描述一個(gè)特定員工的屬性一樣,一個(gè)Class類(lèi)描述一個(gè)特定類(lèi)的屬性。Class類(lèi)中最常用的方法可能就是getName,它能返回類(lèi)的名稱(chēng)。

 

能夠分析類(lèi)的能力的程序稱(chēng)為反射器。

  • 在運(yùn)行時(shí)分析類(lèi)的能力;
  • 在運(yùn)行時(shí)探查對(duì)象.比如,只寫(xiě)一個(gè)toString方法供所有的類(lèi)使用;
  • 實(shí)現(xiàn)通用數(shù)組操作代碼;
  • 利用method對(duì)象.這個(gè)對(duì)象就像C++中的函數(shù)指針.

設(shè)計(jì)繼承的建議:

  1. 把通用字段和操作放到超類(lèi)中;
  2. 不要使用受保護(hù)字段;
  3. 使用繼承來(lái)模型化"is-a"關(guān)系;
  4. 除非所有繼承的方法都有意義,否則不要使用繼承;
  5. 使用多態(tài),而非類(lèi)型信息;
  6. 不要濫用反射.