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

জাভাতে টাইপ ইরেজার (Type Erasure)


জেনেরিক প্রোগ্রামিং (generic programming) সাপোর্ট করার জন্য এবং কঠোর টাইপ চেক (stricter type check) করার জন্য জাভা টাইপ ইরেজার (type erasure) বাস্তবায়ন করে।

  • জেনেরিক টাইপের সকল টাইপ প্যারামিটার বাউন্ড (bound) দিয়ে রিপ্লেস করা হয় (যদি আনবাউন্ডেড হয়) বা অবজেক্ট টাইপ দিয়ে। এই পদ্ধতিতে, বাইটকোডে শুধু ক্লাস, মেথড এবং ইন্টারফেস থাকে।
  • টাইপ কাস্ট (Type casts) টাইপ সংরক্ষণ করতে ব্যবহৃত হয়।
  • ব্রিজ মেথড (Bridge methods) জেনারেট করা হয় এক্সটেন্ডেড জেনেরিক টাইপে পলিমরফিজম (polymorphism) কনসেপ্ট সংরক্ষণ করতে।

উদাহরণ

import java.io.PrintStream; 
import java.util.*; 
public class Demo{ 
    public Demo(){ 
    } 
    public static void main(String args[]){ 
        List my_list = new ArrayList(); 
        my_list.add("Hi there"); 
        String my_str; 
        for (Iterator iter = my_list.iterator(); iter.hasNext(); 
            System.out.println(my_str)) 
            my_str = (String)iter.next(); 
    } 
}

আউটপুট

Hi there

Demo নামে একটি ক্লাস আছে যেটিতে একটি কনস্ট্রাক্টর আছে যার বডি খালি। main ফাংশনে একটি নতুন অ্যারে লিস্ট তৈরি করা হয়, এবং 'add' ফাংশন ব্যবহার করে এলিমেন্টগুলো যোগ করা হয়। একটি ইটারেটর ডিফাইন করা হয়, এবং একটি স্ট্রিং ডিফাইন করা হয়। একটি ইটারেটর 'hasNext' ফাংশন ব্যবহার করে স্ট্রিংয়ের এলিমেন্টগুলোতে ইটারেট করে যা চেক করে কোনো এলিমেন্ট আছে কিনা এবং তারপর সেটির ওপর মুভ করে। আউটপুট স্ক্রিনে প্রিন্ট হয়।

  1. জাভাতে StringIndexOutOfBoundsException কী?

  2. জাভাতে স্ট্রিং ভ্যালু বুলিয়ান টাইপের কিনা যাচাই করা

  3. জাভাতে String কে Double-এ রূপান্তর করা

  4. জাভাতে CLOB টাইপকে String-এ কনভার্ট কীভাবে করবেন?