我的意思是,爲了所有實際目的,它爲什麼在java.awt中定義兩次?java.awt.Rectangle類和java.awt.geom.Rectangle2D.Double類有什麼區別?
回答
Rectangle2D.Double
允許您定義具有浮點維度的矩形。 Rectangle
沒有。此外,你必須明白Rectangle被改型爲Rectangle2D
的子類,其類定義是改爲以擴展Rectangle2D
,以便(a)它可以被抽象爲這個新的父類,並且(b)它可以使用所有的方法更一般Rectangle2D
那麼,這不言而喻,但這是有兩個矩形類的唯一目的? –
@BloodBrother以更多理由編輯我的答案 – ControlAltDel
Rectangle2D.Double支持double
被指定爲x,y,寬度和高度。
長方形只允許int
。
即在文件中明確提出:
http://docs.oracle.com/javase/7/docs/api/java/awt/Rectangle.html
http://docs.oracle.com/javase/7/docs/api/java/awt/geom/Rectangle2D.Double.html
其中的一個原因可能是AWT主要用於UI因爲你是在屏幕座標和像素操作的十進制值有時會更好省略。另一方面,一般幾何應該仍然支持浮點矩形。但這只是一個猜測...
- 1. Debug類和Trace類有什麼區別?
- 2. ConfigurationManager類和Settings類有什麼區別?
- 3. HostingEnvironment類和HttpRuntime類有什麼區別?
- 4. 子類和子類有什麼區別?
- 5. Syncano類和SyncanoDashboard有什麼區別?
- 6. gRPC和Beta gRPC類有什麼區別?
- 7. 抽象類和Mixin有什麼區別?
- 8. Helper和Utility類有什麼區別?
- 9. 聚類和匹配有什麼區別?
- 10. CommaIO和Comma7IO類有什麼區別?
- 11. super()和Parent類名有什麼區別?
- 12. 類別和類方法有什麼區別?
- 13. 繼承與類別有什麼區別
- 14. 業務類和域類有什麼區別?持久類是什麼意思?
- 15. 類別和繼承有什麼區別和使用?
- 16. 靜態類和非靜態類有什麼區別?
- 17. 類變量和類實例有什麼區別?
- 18. Objective-c中的類和類接口有什麼區別?
- 19. span-x類和blueprint-css中的'column'類有什麼區別?
- 20. 選項類型和可空類型有什麼區別?
- 21. 有什麼區別擴展類型和類型
- 22. ASN.1枚舉類型和選擇類型有什麼區別?
- 23. 兩種(類型)值和類型(值)有什麼區別?
- 24. 在Restlet中,Restlet類和Resource類有什麼區別?
- 25. 繼承時抽象類和非抽象類有什麼區別
- 26. netty4中的ProtobufEncoder類和ProtobufEncoderNano類有什麼區別?
- 27. Google App Engine中的Query類和Gqlquery類有什麼區別?
- 28. 抽象類和靜態類之間有什麼區別?
- 29. 潛類型和Manifest類型有什麼區別?
- 30. 外部分類和內部分類有什麼區別?
請閱讀文檔 –