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

জাভা ৯-এ VarHandle ইনস্ট্যান্স তৈরি করার পদ্ধতি

সাধারণত, একটি ভেরিয়েবল হ্যান্ডেল হলো সিম্পলি একটি ভেরিয়েবলের টাইপড রেফারেন্স। এটি হবে একটি অ্যারে এলিমেন্ট, একটি ইনস্ট্যান্স বা স্ট্যাটিক ফিল্ড ক্লাসের। VarHandle ক্লাস স্পেসিফিক কন্ডিশনে ভেরিয়েবলে রাইট এবং রিড অ্যাক্সেস প্রদান করতে পারে। এগুলো ইমিউটেবল এবং কোনো ভিজিবল কন্ডিশন নেই। এর পাশাপাশি, এগুলো সাব-ক্লাসিফাইড করা যায় না, এবং প্রতিটি VarHandle-এর একটি জেনেরিক টাইপ T থাকে, যা এই VarHandle দ্বারা প্রতিনিধিত্ব করা প্রতিটি ভেরিয়েবলের টাইপ। VarHandle-এর উদ্দেশ্য হলো java.util.concurrent.atomic এবং sun.misc.Unsafe অপারেশনসের ইকুইভ্যালেন্ট কল করার একটি স্ট্যান্ডার্ড ডিফাইন করা ফিল্ড এবং অ্যারে এলিমেন্টে।

নিচের উদাহরণে, আমরা MethodHandle.lookup() মেথড ব্যবহার করে একটি VarHandle ইনস্ট্যান্স তৈরি করতে পারি।

উদাহরণ

import java.lang.invoke.VarHandle;
import java.lang.invoke.MethodHandles;

public class VarHandleInstanceTest {
    public static void main(String args[]) {
        try {
            VarHandle fieldHandle = MethodHandles.lookup().in(Student.class).findVarHandle(Student.class, "studentId", int.class);
            System.out.println("VarHandle instance created successfully!!!");
        } catch (NoSuchFieldException | IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}

// Student class
class Student {
    protected int studentId;
    private String[] marks;
    public Student() {
        studentId = 0;
        marks = new String[] {"75", "85", "95"};
    }
}

আউটপুট

VarHandle instance created successfully!!!
  1. জাভাতে JTextField-এ প্যাডিং যোগ করুন

  2. জাভাতে JTable ফিল্টার করুন

  3. জাভাতে লগইন ফর্ম কীভাবে তৈরি করবেন?

  4. পাইথনে সিঙ্গলটন ক্লাস কীভাবে তৈরি করবেন?