वाकई अच्छा सवाल है। मैं हमेशा अतीत में कुछ बाद के वर्षों के लिए इसके बारे में सोचता था, मैंने सोचा कि इसके पीछे कुछ कानूनी कारण था, लेकिन वास्तव में ऐसा नहीं है।
मुझे लगता है कि उत्तर बल्कि सरल है, और बहुत सारे उत्तर वास्तव में इस मुद्दे पर खुदाई नहीं कर रहे हैं।
यदि आपकी भाषा स्क्रीन पर पाईक्सेल को आकर्षित करने की अनुमति देती है, तो इसके आधार पर एक gui रूपरेखा तैयार करना 100% संभव है जो विंडोज फॉर्म नियंत्रणों की नकल और ठीक महसूस करेगा।
चूँकि जावा क्रोसप्लेट रिकॉर्डर है, इसलिए यह पूरी तरह से संभव है कि वास्तविक रनिंग सिस्टम प्रकार (मैक / विंडोज) के आधार पर यूआई रनटाइम प्लेटफॉर्म शैली से मेल खाते हुए दोनों प्लेटफार्मों पर अलग-अलग दिखे।
जैसा कि आप XAML में देख सकते हैं उदाहरण के लिए यूआई को बहुत ही संरचित रूप और भाषा में आसानी से प्रस्तुत किया जा सकता है। यदि ऐसा करने के लिए समय लिया जाता है, तो "मूल" व्यवहार चुनना भी संभव है।
इसलिए जीयूआई फ्रेमवर्क बनाना संभव होगा जो जावा डेवलपर्स को उन अनुप्रयोगों को प्राप्त करने की अनुमति देगा जो मैक और विंडोज पर मूल दिखेंगे।
तो हम स्विंग के लिए, जीयूआई फ्रेमवर्क के संभावित अनन्तता में से सिर्फ एक जीयूआई फ्रेमवर्क को प्राप्त करते हैं जो कि जावा के लिए बनाया जा सकता है। यह व्यवहार करता है कि यह कैसे प्रोग्राम किया गया था, जो उपरोक्त प्रक्रिया का पालन नहीं करता है और आपको दोनों प्रणालियों पर अजीब तरह से दिखने वाले एप्लिकेशन मिलते हैं। Thats पसंद स्विंग डेवलपर्स द्वारा किए गए, किसी ने उन्हें ऐसा करने और उस तरह का व्यवहार करने के लिए मजबूर नहीं किया।