কম্পিউটার

সমস্ত জাভা কনস্ট্রাক্টরগুলিতে কেন একটি ফাঁকা চূড়ান্ত ভেরিয়েবল স্পষ্টভাবে শুরু করা উচিত?


একটি চূড়ান্ত ভেরিয়েবল যা আরম্ভ না করে রেখে দেওয়া হয় তা খালি চূড়ান্ত চলক নামে পরিচিত .

সাধারণত, আমরা কনস্ট্রাক্টরে ইনস্ট্যান্স ভেরিয়েবল শুরু করি। যদি আমরা মিস করি তবে সেগুলি ডিফল্ট মান অনুসারে কনস্ট্রাক্টরদের দ্বারা আরম্ভ করা হবে। কিন্তু, চূড়ান্ত ফাঁকা ভেরিয়েবল ডিফল্ট মান দিয়ে আরম্ভ করা হবে না। সুতরাং আপনি যদি কনস্ট্রাক্টরে আরম্ভ না করে একটি ফাঁকা চূড়ান্ত ভেরিয়েবল ব্যবহার করার চেষ্টা করেন, একটি কম্পাইল টাইম ত্রুটি তৈরি হবে।

উদাহরণ

public class Student {
   public final String name;
   public void display() {
      System.out.println("Name of the Student: "+this.name);
   }
   public static void main(String args[]) {
      new Student().display();
   }
}

কম্পাইল সময় ত্রুটি

কম্পাইল করার সময়, এই প্রোগ্রামটি নিম্নলিখিত ত্রুটি তৈরি করে।

Student.java:3: error: variable name not initialized in the default constructor
   private final String name;
                        ^
1 error

অতএব, আপনি একবার ঘোষণা করলে চূড়ান্ত ভেরিয়েবল শুরু করা বাধ্যতামূলক। যদি ক্লাসে একাধিক কনস্ট্রাক্টর প্রদান করা হয়, তাহলে আপনাকে সমস্ত কনস্ট্রাক্টরের ফাঁকা চূড়ান্ত ভেরিয়েবল শুরু করতে হবে।

উদাহরণ

public class Student {
   public final String name;
   public Student() {
      this.name = "Raju";
   }
   public Student(String name) {
      this.name = name;
   }
   public void display() {
      System.out.println("Name of the Student: "+this.name);
   }
   public static void main(String args[]) {
      new Student().display();
      new Student("Radha").display();
   }
}

আউটপুট

Name of the Student: Raju
Name of the Student: Radha

  1. জাভাতে ফাইনাল ক্লাস

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

  3. জাভাতে চূড়ান্ত কীওয়ার্ড

  4. কেন "ফ্রি ওয়েবসাইটগুলি" সব খরচে এড়ানো উচিত