जैसा कि आप देखते हैं, मुख्य एक फ़ंक्शन तर्क को छोड़ देता है - जो तारों की एक सरणी है। JVM मुख्य कार्य में तारों की सरणी के रूप में किसी भी कमांड लाइन तर्क को पारित करने का ख्याल रखता है। यदि कोई तर्क नहीं दिया गया है, तो खाली सरणी पारित की जाती है - लेकिन यह अभी भी वहां है।
साथ ही आप अपने स्वयं के समारोह इस रूप में परिभाषित किया जा सकता था:
void myMain(String args[]) {
for(int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
फिर आप इस समारोह कॉल कर सकते हैं, गुजर तीन कमांड लाइन तर्क की नकल:
String a[] = {"foo", "bar", "bah"};
myMain(a);
या आप स्थिति का अनुकरण कर सकते हैं जहां कोई कमांड लाइन तर्क नहीं दिया जाता है:
String a[] = {};
myMain(a);
आप 01 पास भी कर सकते हैंअपने कार्य करने के लिए वास्तविक मुख्य से और यह परवाह किए बिना काम करेंगे अगर कोई पैरामीटर या दिए गए थे नहीं:
public static void main(String[] args) {
myMain(args);
}
नोट वहाँ myMain
में कोई नल पॉइंटर की जांच इसलिए यदि आप इसे पारित एक null
यह एनपीई फेंक होगा कि।
क्या आप अधिक स्पष्ट हो सकते हैं, आप पैरामीटर के साथ और बिना एप्लिकेशन को कैसे निष्पादित कर रहे हैं? – medopal
संबंधित उत्तर, आप इस 'सार्वजनिक शून्य myMethod (स्ट्रिंग ... सरणी) की तरह ही बना सकते हैं इस तरह से आप 0 की तर्क संख्या को भी पास कर सकते हैं, और यह त्रुटि नहीं देगा। – medopal