java.awt.Pointが倍精度浮動小数点数を設定および取得するメソッドを提供し、xおよびyをintとして格納するのはなぜですか?

ルーク:

java.awt.PointのOracleドキュメントでわかるように、xとyはとして格納されintます。しかし、getXgetY返しますdoublesetLocation2つのdoubleを取るメソッドがありますが、それを行うコンストラクターはありません。さらに、とにかく内部的にdouble切り捨てられintます。

これには正当な理由がありますか?setLocationを受け取るメソッドを使用することでキャストオンを回避doubleできますが、getXand を呼び出す反対の問題が発生しますgetYdoublefrom getXおよびを返すことにより、Pointクラスの精度が正しく表現されていませんgetY

コンスタンチン・ソロマトフ:

それはGraphics2D抽象クラスで使用されるjava.awt.geom.Point2Dから拡張されるためです。これは互換性の理由からこの方法で実装されました。これまでは、javaはすべてのメソッドがintベースのjava.awt.Graphicsのみをサポートしていたためです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ