जावा बंद करने के लिए spec की वर्तमान स्थिति क्या है?जावा क्लोजर प्रकार, चर, सरणी और संग्रह
प्रस्तावित जावा बंद कल्पना में, हम करने में सक्षम होगा किसी सरणी या बंद होने के संग्रह बनाने के?
यदि हां, तो क्या यह वाक्यविन्यास संभव होगा?{int x, int y => boolean b}[] comparisonSwitch = { {int i, int j => return i>j}, {int i, int j => return j<i}, {int i, int j => return j==i} } boolean compare(int acase, int a, int b){ return comparisonSwitch[acase].invoke(a,b); }
क्या सामान्य तरीकों को गैर-अज्ञात बंद माना जाएगा?
तो क्या निम्न वाक्यविन्यास संभव होगा?public class Asdf { public boolean gt(int x, int y){ return x>y; } public boolean lt(int x, int y){ return x<y; } public boolean eq(int x, int y){ return x==y; } {int x, int y => boolean b} GT = gt; {int x, int y => boolean b}[] comparisonSwitch = { gt, lt, eq } }
जैसे कि, बंद और तरीकों प्रचालन interchangeble कर रहे हैं?
क्या निम्नलिखित वाक्यविन्यास की अनुमति होगी?// declare a method that has a closure type as an argument void closurator({String s => int a} findlen){ // do whatever } String s = "hello"; void useClosurator(){ // invoke the method by supplying a non-anonymous method // of an object closurator(s.indexOf(String ss)); }
हम एक इंटरफ़ेस में बंद प्रकार निर्दिष्ट करने में सक्षम कैसे होंगे?
क्या हम निम्नलिखित विधियों को अंतिम रूप से अंतिम/निरंतर संदर्भ घोषित कर सकते हैं।interface Closuration { public class Asdf { static public boolean gt(int x, int y){ return x>y; } static public boolean lt(int x, int y){ return x<y; } static public boolean eq(int x, int y){ return x==y; } } {int x, int y => boolean b}[] comparisonSwitch = { Asdf.gt, Asdf.lt, Asdf.eq }; }
बंद कोड अंतरिक्ष का उपयोग होता है के बाद से, बस के रूप में प्रतिबिंब, बंद करने की का प्रयोग करेंगे होगा एक कार्यक्रम के प्रदर्शन को धीमा? यदि नहीं, तो इसका मतलब यह होगा कि "बंद प्रौद्योगिकी" में किए गए उधार लेने के द्वारा प्रतिबिंब बढ़ाया जाएगा? , वास्तव में, बंद कोड कोड अंतरिक्ष के या चर ढेर में हिस्सा होगा क्योंकि मैं भविष्यवाणी कर रहा हूँ कि बंद कोड, कचरा संग्रहण द्वारा बंद साफ हो करने के लिए अतिसंवेदनशील हो सकता है सही:
नया प्रश्न सम्मिलित किया गया?
क्या मैं आपको प्रश्नों के सारांश पर ध्यान केंद्रित करने का अनुरोध कर सकता हूं, उदाहरण कोड में किसी भी वाक्यविन्यास त्रुटियों/टाइपो/गायब कीवर्ड पर नहीं। कोई टाइपो/त्रुटियां, कृपया उन्हें मेरे लिए सही करें। धन्यवाद।
यदि आप में से कोई भी इस प्रश्न को "वास्तविक प्रश्न नहीं" के रूप में बंद करने के लिए बहुत ही अधीर है, तो कृपया http://stackoverflow.com/questions/2198734/demonstrate-prove-that पर अपनी स्वयं की टिप्पणी पढ़ें -हेप-सॉर्ट-ऑन-ऑन-लॉग 2 एन-टाइम-बंद: यह होमवर्क नहीं है। 50 साल पुराने प्राचीन प्रोग्रामर को कुछ रणनीति निर्णय लेने के लिए कुछ ईमानदार मदद की ज़रूरत है। –
क्या यह सवाल नील गफ्फर के बंद प्रस्ताव के बारे में है, या वर्तमान में चर्चा के दौरान भेड़ का बच्चा? –
वर्तमान परियोजना लैम्ब्डा: जावा भाषा विशिष्टता ड्राफ्ट 0.1 http://mail.openjdk.java.net/pipermail/lambda-dev/attachments/20100122/3764c21a/attachment.txt संस्करण 0.2 तैयार किया जा रहा है। –