जवाबों:
निम्न निर्देश पर अपने वर्तमान निर्देश सूचक (लाइन को अगले निष्पादित किया जाएगा, जिसके साथ संकेत दिया गया है ->
) पर f(x)
लाइन में लाइन g()
द्वारा बुलाया गया है, g(2)
पर विचार करें main()
:
public class testprog {
static void f (int x) {
System.out.println ("num is " + (x+0)); // <- STEP INTO
}
static void g (int x) {
-> f(x); //
f(1); // <----------------------------------- STEP OVER
}
public static void main (String args[]) {
g(2);
g(3); // <----------------------------------- STEP OUT OF
}
}
यदि आप उस बिंदु पर कदम रखना चाहते हैं, तो आप फ़ंक्शन कॉल में कदम रखते println()
हुए f()
, लाइन में चले जाएंगे ।
आप कदम करना हो तो खत्म हो गया उस बिंदु पर, आप में चले जाएँगे f(1)
में लाइन g()
, समारोह कॉल पर कदम।
डीबगर्स की एक अन्य उपयोगी विशेषता चरण से बाहर या चरण वापसी है। उस स्थिति में, एक चरण वापसी मूल रूप से आपको वर्तमान फ़ंक्शन के माध्यम से चलाएगी जब तक कि आप एक स्तर ऊपर नहीं जाते। दूसरे शब्दों में, यह के माध्यम से कदम होगा f(x)
और f(1)
, फिर बुला कार्य करने के लिए पीछे हटने पर समाप्त करने के लिए g(3)
में main()
।
ग्रहण (कम से कम यूरोपा, जो कि फिलहाल मेरे पास एक ही काम है) के F5लिए step into
, के F6लिए step over
और इसके F7लिए उपयोग करता है step return
।
g(3)
; में main()
" <- आप मानते हैं कि आप अपने को मिला वर्तमान स्थान से g(2)
और एक बार आपने पूर्ण कर आप लौट अपनी अगली पंक्ति में g(3)
?
g(2)
या g(3)
कॉल वर्तमान में सक्रिय है) इसलिए मैंने साफ़ कर दिया है कि पहले पैराग्राफ में। सर उठाने के लिए धन्यवाद।
जब कोड की डीबगिंग लाइनें होती हैं, तो यहां सामान्य परिदृश्य होते हैं:
ग्रहण में अन्य उन्नत डिबगिंग विशेषताएं हैं, लेकिन ये मूल बुनियादी बातें हैं।
कदम में विधि कॉल में खोदेंगे
कदम से अधिक बस लाइन निष्पादित करेंगे और अगले एक पर जाएं
आप स्टेप ओवर का उपयोग करके विधि के विवरण के माध्यम से नहीं जा सकते। यदि आप वर्तमान लाइन को छोड़ना चाहते हैं, तो आप स्टेप ओवर का उपयोग कर सकते हैं, तो आपको केवल F6अगली पंक्ति में जाने के लिए केवल एक बार दबाने की आवश्यकता है । और अगर आपको लगता है कि विधि के भीतर कुछ गलत है, F5तो विवरणों की जांच करने के लिए उपयोग करें।
चरण में निष्पादित की जाने वाली वर्तमान में चयनित लाइन पर अगली अभिव्यक्ति को लागू किया जाता है, और निष्पादित विधि में अगली निष्पादन योग्य रेखा पर निलंबन निलंबित हो जाता है।
स्टेप ओवर वर्तमान में चयनित लाइन निष्पादित की जाती है और अगली निष्पादन योग्य लाइन पर निलंबित हो जाती है।