Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा 9 में स्टैकवॉकर एपीआई?


स्टैकवॉकर एपीआई किसी भी विधि के भीतर कार्यों को निष्पादित करने के लिए आसान फ़िल्टरिंग और आलसी पहुंच की अनुमति देता है। यह Java 9 . में स्टैक ट्रेस जानकारी प्राप्त करने के लिए एक कुशल API है ।

StackWalker API में तीन नए महत्वपूर्ण वर्ग हैं:StackWalker , StackWalker.StackFrame और StackWalker.Option

स्टैकवॉकर - यह StackWalker . में मुख्य वर्ग है एपीआई . हम StackWalker.forEach() . का उपयोग करके स्टैक फ़्रेम को पार करते हैं विधि और StackWalker.getCallerClass() पर कॉल करके कुशल तरीके से कॉलर क्लास प्राप्त करें तरीका। हम स्टैक ट्रेस के माध्यम से चलते हैं और StackWalker.walk() का उपयोग करके स्टैक फ़्रेम की स्ट्रीम पर फ़ंक्शन लागू करते हैं विधि।

StackWalker.StackFrame - यह एक स्थिर नेस्टेड वर्ग है StackWalker का और StackWalker द्वारा विधि आमंत्रण वापसी का प्रतिनिधित्व करता है। इसमें दी गई स्टैक फ्रेम जानकारी तक पहुंचने के तरीके हैं जैसे getDeclaringClass() , getLineNumber() और आदि।

StackWalker.Option - यह एक स्थिर नेस्टेड वर्ग . है जब हम SackWalker.getInstance() के माध्यम से एक इंस्टेंस बनाते हैं तो स्टैक वॉकर के लिए स्टैक फ्रेम जानकारी को कॉन्फ़िगर करने के लिए विकल्प प्रदान करता है। ।

उदाहरण

आयात करें स्टैक =स्टैकवॉकर।getInstance () .चलना (एस -> एस.एकत्र करें (कलेक्टर.toList ())); for(StackWalker.StackFrame sf :स्टैक) { System.out.println(sf.getClassName() + "::" + sf.getMethodName() + ":" + sf.getLineNumber() ); } }}

आउटपुट

StackWalkingTest::main:6 

  1. जावा में स्टैक और हीप मेमोरी के बीच अंतर

    JVM ने मेमोरी स्पेस को दो भागों में विभाजित किया है एक है स्टैक और दूसरा है हीप स्पेस। स्टैक स्पेस मुख्य रूप से विधि निष्पादन और स्थानीय चर के क्रम को संग्रहीत करने के लिए उपयोग किया जाता है। स्टैक हमेशा LIFO क्रम में ब्लॉक संग्रहीत करता है जबकि हीप मेमोरी मेमोरी ब्लॉकों को आवंटित करने और हटाने के

  1. जावा में javax.json API का उपयोग करके JSON को सुंदर प्रिंट करें?

    द javax.json पैकेज एक ऑब्जेक्ट मॉडल API . प्रदान करता है JSON को संसाधित करने के लिए। ऑब्जेक्ट मॉडल एपीआई एक उच्च-स्तरीय एपीआई है जो JSON ऑब्जेक्ट और सरणी संरचनाओं के लिए अपरिवर्तनीय ऑब्जेक्ट मॉडल प्रदान करता है। इन JSON संरचनाओं को JsonObject . का उपयोग करके ऑब्जेक्ट मॉडल के रूप में दर्शाया जा स

  1. हम जावा में स्टैक का उपयोग करके एक कतार को कैसे लागू कर सकते हैं?

    एक कतार वर्ग संग्रह का विस्तार करता है इंटरफ़ेस और यह सम्मिलित करने का समर्थन करता है और फर्स्ट-इन-फर्स्ट-आउट (FIFO) का उपयोग करके संचालन को हटाता है . एक ढेर वेक्टर . का उपवर्ग है वर्ग और यह लास्ट-इन-फर्स्ट-आउट (LIFO) . का प्रतिनिधित्व करता है वस्तुओं का ढेर। स्टैक के शीर्ष पर जोड़ा गया अंतिम त