Java Programming 10: Constructor

person Myat Min Soefolder_openJava Programmingaccess_time August 5, 2016

Java class တိုင်းမှာ Constructor ရှိပါတယ်။ Constructor က Class ကို Object ဆောက်လိုက်တာနဲ့ အလုပ်စလုပ်ပါတယ်။ အရင်သင်ခန်းစာမှာ Student class မှာ constructor မပါဝင်ပါဘူး။ Constructor ကိုထည့်မဆောက်ခဲ့ရင်တောင် သူ့ဟာသူ default constructor ကိုထည့်ပေးပါတယ်။

Student Class မှာ default constructor ထည့်မယ်ဆိုရင် ဒီအတိုင်းမြင်ရမှာဖြစ်ပါတယ်။

[java]
package tutorial;

public class Student {

private String name;
private int mark1;
private int mark2;
private int mark3;

public Student() {

}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getMark1() {
return mark1;
}

public void setMark1(int mark1) {
this.mark1 = mark1;
}

public int getMark2() {
return mark2;
}

public void setMark2(int mark2) {
this.mark2 = mark2;
}

public int getMark3() {
return mark3;
}

public void setMark3(int mark3) {
this.mark3 = mark3;
}

public double getAverage() {
return (mark1 + mark2 + mark3) / 3;
}
}
[/java]
အပေါ်က code ထဲမှာ public Student() {} ဆိုတာ default constructor ပါ။

Constructor ဆိုတာ method တစ်ခုပါပဲ။ ဒါပေမဲ့ return type မပါပါဘူး။ method name က Class name နဲ့တူရပါမယ်။ parameter လက်ခံနိုင်ပါတယ်။ Class တစ်ခုမှာ constructor အများကြီးရှိနိုင်ပါတယ်။ တစ်ခုမှမရှိရင် အပေါ်မှာ ထည့်ခဲ့တဲ့ default constructor ကိုအလုပ်လုပ်ပါတယ်။ နောက်ထပ် Constructor တစ်ခုဆောက်ကြည့်ရအောင်။
[java]
public Student(String name, int mark1, int mark2, int mark3) {
this.name = name;
this.mark1 = mark1;
this.mark2 = mark2;
this.mark3 = mark3;
}
[/java]
အပေါ်က constructor မှာတော့ parameter ၄ ခုလက်ခံပြီး local variable ထဲကို ထည့်လိုက်ပါတယ်။ ဒါဆိုရင် Object စဆောက်တာနဲ့ setter သီးသန့်သုံးစရာမလိုပဲ value တွေထည့်လို့ရပြီးဖြစ်ပါတယ်။ value တွေကိုတစ်ခါတည်းထည့်လိုရင် ဒါမျိုး constructor ဆောက်နိုင်ပါတယ်။ Constructor ကိုတစ်ခုထက်မကဆောက်နိုင်ပေးမဲ့ Parameter တွေထပ်တူမဖြစ်ရပါဘူး။

နောက်ထပ် Class တစ်ခုယူပါ။ Tutorial9 လို့အမည်ပေးပါ။ အောက်ကအတိုင်းရေးကြည့်ပါ။
[java]
package tutorial;

public class Tutorial9 {

public static void main(String[] args) {
Student student = new Student("Aung Aung", 50, 60, 70);

System.out.println("Name : " + student.getName());
System.out.println("Mark1 : " + student.getMark1());
System.out.println("Mark2 : " + student.getMark2());
System.out.println("Mark3 : " + student.getMark3());
System.out.println("Average : " + student.getAverage());
}
}
[/java]
ဒါဆိုရင် run ကြည့်လိုက်တဲ့အခါ အရင်အတိုင်းပဲ နာမည်နဲ့အမှတ်တွေထွက်လာမှာဖြစ်ပါတယ်။

ဒီမှာတစ်ခုကွာသွားတာက Object အသစ်ဆောက်တဲ့အခါ () ထဲမှာ constructor ထဲက parameter ကိုသုံးပြီး data တွေထည့်လိုက်တာပဲဖြစ်ပါတယ်။
[java]
Student student = new Student("Aung Aung", 50, 60, 70);
[/java]

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>