জাভা প্রোগ্রাম থেকে ইন্টারফেস মেথড কল করতে হলে প্রোগ্রামটি ইন্টারফেস ইমপ্লিমেন্টেশন ক্লাসটি ইনস্ট্যানশিয়েট করতে হবে। তারপর ইমপ্লিমেন্টেশন অবজেক্ট দিয়ে মেথড কল করা যায়।
উদাহরণ
public interface InterfaceDemo {
default public void displayNameDefault(String name) {
System.out.println("Your name is : " + name);
}
public void displayName(String name);
public void displayNameAndDesignation(String name, String designation);
}
উপরোক্ত ইন্টারফেসে নাম এবং ঐচ্ছিক জব টাইটেল দেখানোর তিনটি মেথড সংজ্ঞায়িত। একটি মেথড ডিফল্ট মেথড যাতে ইমপ্লিমেন্টেশন লজিক রয়েছে। বাকি দুটি মেথডে ইমপ্লিমেন্টেশন নেই।
public class InterfaceDemoImpl implements InterfaceDemo {
public void displayName(String name) {
System.out.println(name);
}
public void displayNameAndDesignation(String name, String designation) {
System.out.println("Name:" + name + "\n" + "Designation:" + designation);
}
}
উপরোক্ত জাভা প্রোগ্রাম implements কীওয়ার্ড দিয়ে ইন্টারফেস ইমপ্লিমেন্ট করার ঘোষণা করে। প্রোগ্রামটি এখন دوটি নন-ডিফল্ট মেথডের জন্য জাভা কোড দিতে বাধ্য। অনুযায়ী, মেথডগুলোর ইমপ্লিমেন্টেশন দেওয়া হয়েছে।
public class CallInterfaceMethod {
public static void main(String args[]) {
InterfaceDemo demo = new InterfaceDemoImpl();
demo.displayName("Adithya");
demo.displayNameAndDesignation("Adithya", "Java Developer");
demo.displayNameDefault("Adithya");
}
}
উপরোক্ত প্রোগ্রাম ইন্টারফেস ইমপ্লিমেন্টেশন ইনস্ট্যানশিয়েট করে। এরপর ইন্টারফেসে সংজ্ঞায়িত প্রতিটি মেথড কল করা হয়।
আউটপুট
Adithya
Name:Adithya
Designation:Java Developer
Your name is : Adithya