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

জাভাতে কনস্ট্রাক্টরের সাপেক্ষে নন-স্ট্যাটিক ব্লকের এক্সিকিউশন অর্ডার কী?


যখন কোনো অবজেক্ট তৈরি হয়, একটি নন-স্ট্যাটিক ব্লক কনস্ট্রাক্টরের এক্সিকিউশন থেকে আগে এক্সিকিউট হয়।

নন-স্ট্যাটিক ব্লক

  • নন-স্ট্যাটিক ব্লক হল ক্লাস লেভেল ব্লক যেগুলোর কোনো প্রোটোটাইপ নেই।
  • নন-স্ট্যাটিক ব্লক-র প্রয়োজন হয় যেকোনো লজিক এক্সিকিউট করার জন্য যখনই কোনো অবজেক্ট তৈরি হয়, কনস্ট্রাক্টর-এর ওপর নির্ভর না করে।
  • নন-স্ট্যাটিক ব্লকগুলো JVM দ্বারা স্বয়ংক্রিয়ভাবে প্রতিটি অবজেক্ট তৈরি হওয়ার সময় জাভা স্ট্যাক এরিয়া-এ কল করা হয়।
  • জাভাতে আমরা যেকোনো সংখ্যক নন-স্ট্যাটিক ব্লক তৈরি করতে পারি।
  • নন-স্ট্যাটিক ব্লক-এর এক্সিকিউশন অর্ডার হল সেগুলো যে ক্রমে ডেফাইন করা হয়েছে।

উদাহরণ

public class NonStaticBlockTest { 
    { 
        System.out.println("First Non-Static Block"); // প্রথম নন-স্ট্যাটিক ব্লক 
    } 
    { 
        System.out.println("Second Non-Static Block"); // দ্বিতীয় নন-স্ট্যাটিক ব্লক 
    } 
    { 
        System.out.println("Third Non-Static Block"); // তৃতীয় নন-স্ট্যাটিক ব্লক 
    } 
    NonStaticBlockTest() { 
        System.out.println("Execution of a Constructor"); // কনস্ট্রাক্টর 
    } 
    public static void main(String args[]) { 
        NonStaticBlockTest nsbt1 = new NonStaticBlockTest(); 
        NonStaticBlockTest nsbt2 = new NonStaticBlockTest(); 
    } 
}

আউটপুট

First Non-Static Block 
Second Non-Static Block 
Third Non-Static Block 
Execution of a Constructor 
First Non-Static Block 
Second Non-Static Block 
Third Non-Static Block 
Execution of a Constructor
  1. জাভাতে unreachable catch blocks কী?

  2. জাভাতে ডিফল্ট কনস্ট্রাক্টর এবং প্যারামিটারাইজড কনস্ট্রাক্টরের পার্থক্য কী?

  3. জাভা ক্লাসে স্ট্যাটিক মেম্বার পড়ার ধাপগুলো কী?

  4. জাভাতে এক ট্রাই ব্লকে একাধিক ক্যাচ ব্লক ব্যবহার করা যায় কি?