मैं किलियन के उत्तर में जोड़ूंगा कि जावा और सी # के बीच एक बड़ा अंतर यह है कि सी # डिजाइनर न केवल भाषा को नियंत्रित करते हैं, बल्कि मानक आईडीई भी हैं।
विस्तार विधियों और आंशिक वर्गों की तरह कुछ जोड़ने से विकास / नियंत्रण संस्करण में एक बुरा सपना हो सकता है अगर आईडीई इसे ठीक से समर्थन नहीं करेगा।
चूंकि आपको अपनी पसंद के प्लेटफ़ॉर्म (ग्रहण, नेटबीन, vi + चींटी) के साथ जावा को संकलित करने में सक्षम होने की उम्मीद है, इसलिए कोड को तोड़ने वाली सुविधाओं को जोड़ना (और LINQ जैसे अतिरिक्त एक्सटेंशन विकसित करने के लिए इनका उपयोग करना) केवल कहने की तुलना में अधिक जटिल है चूंकि इन मामलों के साथ इंटेलीसेन्सन व्यवहार करेगा, हमें चिंता करने की आवश्यकता नहीं है ”।
इसके अतिरिक्त, कभी-कभी इसकी संख्या के बजाय सुविधाओं के मूल्य पर ध्यान देने योग्य होता है। उदाहरण के लिए, स्वचालित गुण अच्छे हैं और मैं निश्चित रूप से चाहता हूं कि जावा ने इसका समर्थन किया है, लेकिन अंत में इसका मतलब केवल यह है कि आपको जावा में कोड की कुछ और पंक्तियां लिखनी होंगी। इसी तरह, मुझे लगता है कि "ईवेंट्स" को कॉल करना कुछ गलत है, क्योंकि वे विशेष रूप से लेबल प्रतिनिधियों की तुलना में थोड़े अधिक हैं, और जावा द्वारा पहले से ही इस्तेमाल किए गए ऑब्जर्वर पैटर्न की एक परिष्कृत प्रति (तब फिर से, जावा में इसे और अधिक स्पष्ट करने की आवश्यकता है) कोडिंग)
मुझे गलत मत समझो, मुझे लगता है कि सी # ने कई उल्लेखनीय नवाचार पेश किए हैं, और मैं चाहता हूं कि किसी दिन ओरेकल के बड़े बॉस जागेंगे और इनमें से कुछ को शामिल करने के लिए एक सच्चे "जावा 2" लॉन्च करेंगे, लेकिन यह अंतर आपके लिए उतना स्पष्ट नहीं है प्रश्न अंक।