Java Abstraction
Abstract Classes နှင့် Methods
Data abstraction သည် အချို့သောအသေးစိတ်အချက်အလက်များကို ဖုံးကွယ်ထားပြီး အသုံးပြုသူအား မရှိမဖြစ်လိုအပ်သော အချက်အလက်များကိုသာ ပြသသည့်လုပ်ငန်းစဉ်ဖြစ်သည်။ Abstraction သည် abstract classes သို့မဟုတ်
interfaces
ဖြင့်အောင်မြင်နိုင်သည် (နောက်အခန်းတွင်သင်ပိုမိုလေ့လာနိုင်သည်)။
သော့ချက်စကားလုံး သည် abstract
အတန်းများနှင့် နည်းလမ်းများအတွက် အသုံးပြုသည့် ဝင်ရောက်မွမ်းမံမှုတစ်ခုဖြစ်သည်။
- Abstract class- သည် အရာဝတ္ထုများဖန်တီးရန် အသုံးပြု၍မရသော ကန့်သတ်အတန်းတစ်ခုဖြစ်သည် (၎င်းကိုဝင်ရောက်ရန်၊ ၎င်းကို အခြားအတန်းမှ အမွေဆက်ခံရမည်)။
- Abstract method- abstract class တွင်သာ အသုံးပြုနိုင်ပြီး ၎င်းတွင် စာကိုယ်မရှိပါ။ ကိုယ်ထည်ကို အတန်းခွဲ (ထံမှ အမွေဆက်ခံသူ) မှ ပံ့ပိုးပေးပါသည်။
abstract class တစ်ခုတွင် abstract နှင့် ပုံမှန် method နှစ်မျိုးလုံး ရှိနိုင်သည်-
abstract class Animal {
public abstract void animalSound();
public void sleep() {
System.out.println("Zzz");
}
}
အထက်ဖော်ပြပါ ဥပမာမှ၊ Animal class ၏ object တစ်ခုကို ဖန်တီး၍မရပါ။
Animal myObj = new Animal(); // will generate an error
abstract class ကို ဝင်ရောက်ရန်၊ ၎င်းကို အခြား class မှ အမွေဆက်ခံရပါမည်။ Polymorphism အခန်းတွင်အသုံးပြုထားသော Animal class ကို abstract class အဖြစ်သို့ ပြောင်းကြပါစို့ ။
အတန်းတစ်ခုမှ အမွေဆက်ခံရန် သော့ချက်စကားလုံးကို ကျွန်ုပ်တို့ အသုံးပြုသည့် အမွေဆက်ခံခြင်းအခန်းမှ သတိရပါ ။extends
ဥပမာ
// Abstract class
abstract class Animal {
// Abstract method (does not have a body)
public abstract void animalSound();
// Regular method
public void sleep() {
System.out.println("Zzz");
}
}
// Subclass (inherit from Animal)
class Pig extends Animal {
public void animalSound() {
// The body of animalSound() is provided here
System.out.println("The pig says: wee wee");
}
}
class Main {
public static void main(String[] args) {
Pig myPig = new Pig(); // Create a Pig object
myPig.animalSound();
myPig.sleep();
}
}
Abstract Classes နှင့် Method များကို အဘယ်ကြောင့် မည်သည့်အချိန်တွင် အသုံးပြုရမည်နည်း။
လုံခြုံရေးရရှိရန် - အချို့သောအသေးစိတ်အချက်အလက်များကို ဝှက်ထားပြီး အရာဝတ္ထုတစ်ခု၏ အရေးကြီးသောအသေးစိတ်များကိုသာ ပြသပါ။
မှတ်ချက်- Abstraction သည် နောက်အခန်းတွင် သင်ပိုမိုလေ့လာရမည့် Interfaces ဖြင့်လည်း အောင်မြင်နိုင်သည် ။