You are on page 1of 7

1

Mn hc: Lp trnh Java


Bi thc hnh s 2: To lp n gin, khi to v s dng i tng
Bi 1) To mt lp biu din im trong mt phng (Point) gm cc thuc tnh: Tn im (Chui
k t v d: A, BB, C), Honh (s thc), Tung (s thc).
a) Vit cc phng thc get/set cho lp Point
b) Vit cc phng thc khi to sau:
i) Phng thc khi to khng c tham s no: Gn cho honh v tung = 0, tn
im mc nh l A.
ii) Phng thc khi to nhn hai s thc lm tham s
iii) Phng thc khi to nhn 1 xu k t v 2 s thc lm tham s
c) Vit phng thc nhp vo mt im t bn phm: Nhp tung v honh t bn
phm (s dng JOptionPane.showInputDialog(..)).
d) Vit phng thc in thng tin mt im ra mn hnh di dng: Tn_im(Tung_,
Honh_). V d: A(2, 4).
e) Vit hm main kim tra cc phng thc ci t cho lp.
Li gii mu:
o Nhn chut phi vo src, chn Add New Class.
o G Point vo name v com.bean vo Package. Nhn Finish
o G ni dung ca lp Point theo bi mu sau
package com.bean;
import javax.swing.JOptionPane;
public class Point {
private String tenDiem;
private double tungDo;
private double hoanhDo;
// Ham khoi tao khong tham so
public Point()
{
setTenDiem("A");
setTungDo(0.0);
setHoanhDo(0.0);
}
// Ham khoi tao 2 tham so tung do va hoanh do
2
public Point(double tung, double hoanh)
{
setTenDiem("Noname");
setTungDo(tung);
setHoanhDo(hoanh);
}
// Ham khoi tao 3 tham so ten diem, tung do va hoanh do
public Point(String ten, double tung, double hoanh)
{
setTenDiem(ten);
setTungDo(tung);
setHoanhDo(hoanh);
}
public void setTenDiem(String ten){
tenDiem = ten;
}
public void setTungDo(double tung){
tungDo = tung;
}
public void setHoanhDo(double hoanh){
hoanhDo = hoanh;
}
public String getTenDiem(){
return tenDiem;
}
public double getTungDo(){
return tungDo;
}
public double getHoanhDo(){
return hoanhDo;
}
public void nhap(){
String strTenDiem, strTung, strHoanh;
double dTung, dHoanh;
3
strTenDiem = JOptionPane.showInputDialog(null,
"Nhap ten diem: ",JOptionPane.INFORMATION_MESSAGE);
setTenDiem(strTenDiem);
strTung = JOptionPane.showInputDialog(null,
"Nhap tung do: ",JOptionPane.INFORMATION_MESSAGE);
dTung = Double.parseDouble(strTung);
setTungDo(dTung);
strHoanh= JOptionPane.showInputDialog(null,
"Nhap hoanh do: ",JOptionPane.INFORMATION_MESSAGE);
dHoanh = Double.parseDouble(strHoanh);
setHoanhDo(dHoanh);
}
public void hienThi(){
JOptionPane.showMessageDialog(null, "Point: "
+ getTenDiem() + "(" + getTungDo()
+ "," + getHoanhDo() + ")");
}
}
o Chn Run Run as Java application bin dch Point.java. Nu khng c li thc
hin bc tip theo.
o Nhn chut phi vo src, chn Add New Class.
o G TestPoint vo name v com.test vo Package. Nhn Finish
o G ni dung ca lp TestPoint theo bi mu sau:
package com.test;
import com.bean.*;
public class TestPoint {
public static void main(String[] args) {
//Goi ham khoi tao khong tham so
Point obj1 = new Point();
obj1.hienThi();
//Goi ham khoi tao 2 tham so
Point obj2 = new Point(-12.8, 13);
obj2.hienThi();
//Goi ham khoi tao 3 tham so
4
Point obj3 = new Point("B", 3.5, 4.5);
obj3.hienThi();
Point obj4 = new Point();
obj4.nhap();
obj4.hienThi();
}
}
Bi 2) To mt lp MyDate gm 3 thuc tnh ngy, thng, nm (date, month, year) s nguyn
trong gi com.utils.
a) Vit cc phng thc set/get cho cc thuc tnh ca lp MyDate.
b) Xy dng 2 phng thc khi to:
Mt phng thc khng c tham s
Mt phng thc c 3 tham s c kiu l kiu ca 3 thuc tnh ca lp.
c) To phng thc nhp cc thuc tnh cho i tng MyDate t bn phm v phng
thc in ra ngy, thng, nm ca i tng MyDate ra mn hnh.
d) Vit hm main thc hin cc lnh kim tra cc phng thc ca lp xy dng
Li gii mu:
o Nhn chut phi vo src, chn Add New Class.
o G MyDate vo name v com.utils vo Package. Nhn Finish
o G ni dung ca lp MyDate theo bi mu sau
package com.utils;
import javax.swing.JOptionPane;
import java.util.Calendar;
public class MyDate {
private int ngay; // 1-31
private int thang; // 1-12
private int nam;
// Ham khoi tao khong tham so
public MyDate()
{
Calendar cal = Calendar.getInstance(); // Ngay thang nam hien tai
setNgay(cal.get(Calendar.DAY_OF_MONTH));
setThang(cal.get(Calendar.MONTH) + 1);
setNam(cal.get(Calendar.YEAR));
}
5
// Ham khoi tao 3 tham so ngay, thang va nam
public MyDate(int d, int m, int y)
{
setNgay(d);
setThang(m);
setNam(y);
}
public void setNgay(int ng){
ngay = ng;
}
public void setThang(int th){
thang = th;
}
public void setNam(int n){
nam = n;
}
public int getNgay(){
return ngay;
}
public int getThang(){
return thang;
}
public int getNam(){
return nam;
}
public void nhap(){
String strNgay, strThang, strNam;
int iNgay, iThang, iNam;
do{
strNgay = JOptionPane.showInputDialog(null,"Nhap ngay: ",
JOptionPane.INFORMATION_MESSAGE);
iNgay = Integer.parseInt(strNgay);
} while (iNgay < 1 || iNgay > 32);
6
setNgay(iNgay);
do{
strThang = JOptionPane.showInputDialog(null,"Nhap thang: ",
JOptionPane.INFORMATION_MESSAGE);
iThang = Integer.parseInt(strThang);
} while (iThang < 1 || iThang > 12);
setThang(iThang);
do{
strNam = JOptionPane.showInputDialog(null,"Nhap nam: ",
JOptionPane.INFORMATION_MESSAGE);
iNam = Integer.parseInt(strNam);
} while (iNam < 0);
setNam(iNam);
}
public void hienThi(){
Calendar cal = Calendar.getInstance();
cal.set(getNam(), getThang() - 1, getNgay());
JOptionPane.showMessageDialog(null,
((cal.get(Calendar.DAY_OF_WEEK)==1)?
"Chu nhat":
"Thu " + cal.get(Calendar.DAY_OF_WEEK))
+ ", ngay " + getNgay() + "/"
+ getThang() + "/" + getNam());
}
}
o Chn Run Run as Java application bin dch MyDate.java. Nu khng c li
thc hin bc tip theo.
o Nhn chut phi vo src, chn Add New Class.
o G TestMyDate vo name v com.test vo Package. Nhn Finish
o G ni dung ca lp TestMyDate theo bi mu sau:
package com.test;
import com.utils.MyDate;
7
public class TestMyDate {
public static void main(String[] args) {
//Goi ham khoi tao khong tham so
MyDate obj1 = new MyDate();
obj1.hienThi();
//Goi ham khoi tao 3 tham so
MyDate obj2 = new MyDate(12, 12, 2007);
obj2.hienThi();
MyDate obj3 = new MyDate();
obj3.nhap();
obj3.hienThi();
}
}
Bi 3) To mt lp s phc (Complex) gm cc thuc tnh: Phn thc v Phn o (s thc)
a) Vit cc phng thc get/set cho cc thuc tnh ca lp Complex nhm m bo tnh
ng gi.
b) Vit cc phng thc khi to sau y cho lp Complex:
i) Khng c tham s no: gn phn thc v phn o = 0
ii) Nhn hai s thc lm tham s
c) Vit phng thc nhp vo mt s phc t bn phm vi ch k nh sau:
public void nhapSoPhuc(Complex cmp)
d) Vit cc phng thc cng, tr, nhn, chia hai s phc vi cc ch k nh sau:
public Complex congHaiSoPhuc(Complex cmp1, Complex cmp2)
public Complex truHaiSoPhuc(Complex cmp1, Complex cmp2)
public Complex nhanHaiSoPhuc(Complex cmp1, Complex cmp2)
public Complex chiaHaiSoPhuc(Complex cmp1, Complex cmp2)
e) Vit phng thc in thng tin mt s phc ra mn hnh
public inSoPhuc(Complex cmp)
f) Vit hm main kim tra cc phng thc ci t cho lp

You might also like