Thuta Learning
ရှာဖွေရန်
AdvancedProgrammingbeginner

Abstraction

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Abstraction သည် complex details တွေကိုဖုံးပြီး အရေးကြီးတဲ့ behavior ကိုပဲအပြင်ကိုပြတဲ့ concept ပါ။ ကားမောင်းတဲ့အခါ engine ထဲက combustion detail မသိလည်း accelerator နဲ့ brake ကိုသုံးနိုင်သလိုပါပဲ။ Java မှာ abstract class နဲ့ interface တွေသုံးပြီး abstraction တည်ဆောက်နိုင်ပါတယ်။

java
abstract class Payment {
  abstract void pay(double amount);

  void showCurrency() {
    System.out.println("Currency: USD");
  }
}

class CardPayment extends Payment {
  void pay(double amount) {
    System.out.println("Paid " + amount + " using card.");
  }
}

public class Main {
  public static void main(String[] args) {
    Payment payment = new CardPayment();
    payment.showCurrency();
    payment.pay(49.99);
  }
}

Payment သည် abstract class ဖြစ်ပြီး pay() method ကို body မပါဘဲကြေညာထားပါတယ်။ CardPayment က pay method ကိုအကောင်အထည်ဖော်ပါတယ်။ Abstract class ကိုတိုက်ရိုက် new Payment() မလုပ်နိုင်ပါ။

You should see
Currency: USD Paid 49.99 using card.

လက်တွေ့အသုံးချမှု

Payment methods, file storage providers, AI model providers, notification providers တွေကို abstraction နဲ့ design လုပ်နိုင်ပါတယ်။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Abstract class ကိုတိုက်ရိုက် object ဆောက်တာ၊ abstract method ကို child class မှာမရေးတာတွေက compile error ဖြစ်စေပါတယ်။
Abstraction | Thuta Learning