2012-03-05 25 views
7

जैसा कि आप java.awt.Point के लिए ओरेकल दस्तावेज़ीकरण में देख सकते हैं, एक्स और वाई int के रूप में संग्रहीत हैं। हालांकि, getX और getY वापसी double। जबकि setLocation विधि है जो 2 double प्रकार लेती है, वहां कोई भी कन्स्ट्रक्टर नहीं होता है। इसके अलावा, double किसी भी तरह से int को किसी भी तरह से छोटा कर दिया जाता है।java.awt.Point क्यों सेट करने और युगल पाने के तरीकों को प्रदान करता है लेकिन int और x के रूप में स्टोर करता है?

क्या इसके लिए कोई अच्छा कारण है? double प्रकारों वाली विधि रखने के द्वारा आप setLocation पर एक कास्ट से बच सकते हैं, लेकिन जब आप getX और getY पर कॉल करते हैं तो आपको विपरीत समस्या होती है। getX और getY से double लौटकर प्वाइंट क्लास की परिशुद्धता का गलत वर्णन भी है।

उत्तर

7

क्योंकि यह java.awt.geom.Point2D से फैला है जो ग्राफिक्स 2 डी सार वर्ग में उपयोग किया जाता है। इससे पहले संगतता कारण के लिए इसे लागू किया गया था, जावा ने केवल जावा.एट.ग्राफिक्स का समर्थन किया जहां सभी विधियां int आधारित हैं।