কম্পিউটার টিউটোরিয়াল

জাভা 9 এ জেশেলের একটি ফরোয়ার্ড রেফারেন্স কি?


JShell একটি কমান্ড-লাইন সরঞ্জাম যা আমাদের জাভা স্টেটমেন্ট (সরল বিবৃতি, যৌগিক বিবৃতি, এমনকি সম্পূর্ণ পদ্ধতি এবং ক্লাস) প্রবেশ করতে দেয়, এটি মূল্যায়ন করে এবং ফলাফল প্রিন্ট করে।

ফরোয়ার্ড ৷ রেফারেন্স কমান্ড যা পদ্ধতি উল্লেখ করে , ভেরিয়েবল , অথবা শ্রেণী যেটি আমরা JShell এ টাইপ করেছি এমন কোনো কোডে বিদ্যমান নেই। JShell-এ ক্রমানুসারে কোড প্রবেশ করানো এবং মূল্যায়ন করা হয়, এইগুলি ফরোয়ার্ড রেফারেন্স সাময়িকভাবে অমীমাংসিত আছে. JShell পদ্ধতিতে ফরোয়ার্ড রেফারেন্স সমর্থন করে দেহ , ফিরুন প্রকার , প্যারামিটার প্রকার , পরিবর্তনশীল প্রকার , এবং এর মধ্যে a শ্রেণী .

নীচের কোড স্নিপেটে, একটি পদ্ধতি তৈরি করা হয়েছে forwardReference() Jshell-এ। পরিবর্তনশীল ঘোষণা না করা পর্যন্ত এই পদ্ধতিটি চালু করা যাবে না। যদি আমরা এই পদ্ধতিতে কল করার চেষ্টা করি তবে এটি একটি সতর্ক বার্তা ছুড়ে দেয়:"পদ্ধতি ফরওয়ার্ড রেফারেন্স() কল করার চেষ্টা করা হয়েছে যা পরিবর্তনশীল notYetDeclared ঘোষিত না হওয়া পর্যন্ত আহ্বান করা যাবে না "

C:\Users\User>jshell
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro

jshell> void forwardReference() {
...>       System.out.println(notYetDeclared);
...>    }
| created method forwardReference(), however, it cannot be invoked until variable notYetDeclared is declared

jshell> forwardReference()
| attempted to call method forwardReference() which cannot be invoked until variable notYetDeclared is declared


নীচের কোড স্নিপেটে, আমরা "NotYetDeclared ঘোষণা করেছি " ভেরিয়েবল যা একটি স্ট্রিং প্রদান করে। অবশেষে, যদি আমরা forwardReference() কল করি JShell-এ, তারপর এটি প্রিন্ট করে "ভেরিয়েবল ঘোষণা করা হয়েছে" .

jshell> String notYetDeclared = "variable is declared"
notYetDeclared ==> "variable is declared"

jshell> forwardReference()
variable is declared

  1. জাভা 9-এ JShell-এ বিভিন্ন/সম্পাদনা কমান্ডগুলি কী কী?

  2. জাভাতে StringIndexOutOfBoundsException কি?

  3. জাভাতে স্থানীয় ভেরিয়েবলের ডিফল্ট মান কী?

  4. জাভাতে চূড়ান্ত পরিবর্তনশীল