Interface သည် class တစ်ခုက ဘာလုပ်နိုင်ရမလဲဆိုတဲ့ contract လိုပါပဲ။ Interface ထဲမှာ method signatures တွေကြေညာပြီး class က implements လုပ်တဲ့အခါ အဲဒီ methods တွေကိုရေးပေးရပါတယ်။ Interface က “မင်း delivery လုပ်မယ်ဆို deliver() method ရှိရမယ်” လို့စာချုပ်ချုပ်ထားတာလိုပါ။
java
interface Notifier {
void send(String message);
}
class EmailNotifier implements Notifier {
public void send(String message) {
System.out.println("Email sent: " + message);
}
}
class SmsNotifier implements Notifier {
public void send(String message) {
System.out.println("SMS sent: " + message);
}
}
public class Main {
public static void main(String[] args) {
Notifier notifier = new EmailNotifier();
notifier.send("Welcome to Java!");
}
}Notifier interface က send method ရှိရမယ်လို့သတ်မှတ်ထားပါတယ်။ EmailNotifier နဲ့ SmsNotifier တို့က interface ကို implements လုပ်ပြီး send behavior ကိုတစ်ခုချင်းစီရေးထားပါတယ်။
You should see
Email sent: Welcome to Java!လက်တွေ့အသုံးချမှု
Email/SMS/Push notification, Stripe/PayPal payment, local/cloud storage provider စတဲ့ interchangeable systems တွေမှာ interface သုံးတာက clean architecture ဖြစ်စေပါတယ်။