জাভা main() মেথড সবসময় static, যাতে কম্পাইলার এটি অবজেক্ট তৈরি না করেও বা ক্লাসের অবজেক্ট তৈরি হওয়ার আগে কল করতে পারে।
- যেকোনো জাভা প্রোগ্রামে, main() মেথড হলো স্ট্রাটিং পয়েন্ট যেখানে থেকে কম্পাইলার প্রোগ্রাম এক্সিকিউশন শুরু করে। তাই কম্পিলারকে main() মেথড কল করতে হয়।
- যদি main() কে non-static থাকতে দেয়া হয়, তবে main() মেথড কল করার সময় JVM এর ক্লাসটি ইনস্ট্যানশিয়েট করতে হতো।
- ইনস্ট্যানশিয়েট করার সময় সেটি সেই ক্লাসের কন্সট্রাক্টর কল করতে হতো, কন্সট্রাক্টর আর্গুমেন্ট নিলে অ্যמ্বিগুইটি হয়ে যাবে।
- একটি ক্লাসের static মেথড শুধু ক্লাসের নাম দিয়ে কল করা যায় বিনা অবজেক্ট তৈরি করেই।
- main() মেথড জাভাতে অবশ্যই public, static এবং void ডিক্লেয়ার করা উচিত। যদি এই중에 যেকোনো একটিও মিসিং থাকে, জাভা প্রোগ্রাম কম্পাইল হবে কিন্তু রানটাইম এরর থ্রো করবে।
উদাহরণ
class Book {
public static void getBookInfo() { //static method
System.out.println("Welcome to TutorialsPoint Library");
}
}
public class Test {
public static void main(String[] args) {
// Book ক্লাসের static মেথড ক্লাস নাম দিয়ে কল
Book.getBookInfo();
}
}
আউটপুট
Welcome to TutorialsPoint Library