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

জাভাতে start() এর পরিবর্তে run() মেথড সরাসরি কল করা যায় কিনা


হ্যাঁ, আমরা সেটি করতে পারি। একটি উদাহরণ দেখা যাক:

উদাহরণ

class my_thread extends Thread{    public void run(){       try{          System.out.println ("The thread " + Thread.currentThread().getId() + " is currently running");       }       catch (Exception e){          System.out.println ("The exception has been caught");       }    } } public class Main{    public static void main(String[] args){       int n = 6;       for (int i=1; i<n; i++){          my_thread my_object = new my_thread();          my_object.run();       }    } }

আউটপুট

The thread 1 is currently running The thread 1 is currently running The thread 1 is currently running The thread 1 is currently running The thread 1 is currently running

'my_thread' নামক একটি ক্লাস মূল Thread কে ইনহেরিট করে, যেখানে 'run' ফাংশন সংজ্ঞায়িত করা হয়েছে, যা বর্তমান থ্রেডের আইডি দেয় যা রান করছে। একটি try এবং catch ব্লক সংজ্ঞায়িত করা হয়েছে যা এক্সেপশন (যদি থাকে) ক্যাচ করে এবং প্রাসঙ্গিক এরর দেখায়। main ফাংশনে একটি 'for' লুপ রান করে এবং 'my_thread' ক্লাসের নতুন অবজেক্ট তৈরি করা হয়। এই অবজেক্টের ওপর 'run' ফাংশন কল করা হয়।


  1. জাভাতে invokeLater() মেথড কল করার পদ্ধতি

  2. জাভাতে থ্রেডের wait() এবং wait(long) মেথড কখন কল করতে হয়

  3. জাভাতে মেইন মেথড প্রাইভেট ঘোষণা করা যায় কি?

  4. জাভাতে ফাইনাল মেথড ইনহেরিট করা যায় কি?