You are on page 1of 6

Nguyễn Lê Trùng Dương

LAB 4: LỚP VÀ ĐỐI TƯỢNG

BÀI 1 (2 ĐIỂM)
Tạo lớp SanPham gồm 3 thuộc tính là tên, giá và giảm giá. Lớp cũng gồm 2
phương thức là tính thuế nhập khẩu (10% giá sản phẩm) và xuất thông tin ra màn
hình. Thông tin xuất ra màn hình gồm:

CODE:

package vtk41.lab4;
import java.util.Scanner;
public class SanPham {
String tenSP;
double donGia;
double giamGia;
public static void main(String[] args) {
System.out.println("thue nhap khau ");
}
double getThueNhapKhau(){
return donGia * 0.1;
}
void xuat(){
System.out.printf("Ten San Pham: %s ", tenSP);
System.out.printf("Don Gia: %.1f vnd ", donGia);
System.out.printf("Giam Gia: %.1f vnd ", giamGia);
System.out.printf("thue nhap khau: %.1f vnd ", getThueNhapKhau());
}
void nhap(){
Scanner scanner = new Scanner(System.in);
System.out.println("Nhap ten san pham: ");
tenSP = scanner.nextLine();
System.out.println("Nhap don gia: ");
donGia = scanner.nextDouble();
System.out.println("Nhap giam gia: ");
giamGia= scanner.nextDouble();
}
}
1
Nguyễn Lê Trùng Dương

BÀI 2 (2 ĐIỂM)
Viết chương trình tạo ra 2 sản phẩm thông tin được nhập từ bàn phím sau đó gọi
phương thức xuất để xuất thông tin 2 đối tượng sản phẩm đã tạo

CODE:

package vtk41.lab4;
public class NewClass {
public static void main(String[] args) {
SanPham sp1 = new SanPham();
sp1.nhap();
sp1.xuat();
System.out.println("---------------");
sp1.xuat();
SanPham sp2;
sp2 = new SanPham();
sp2.nhap();
sp2.xuat();
}
}

Kết Quả:

2
Nguyễn Lê Trùng Dương

BÀI 3 (2 ĐIỂM)
Nâng cấp lớp SanPham bằng cách bổ sung public cho các đặt tả truy xuất cho
phương thức xuat() và private cho getThueThuNhap(). Đồng thời bổ sung 2 hàm
tạo, hàm tạo thứ nhất gồm 3 tham số là tên, giá và giảm giá, hàm tạo thứ 2 gồm 2
tham số là tên và giá (ngầm hiểu không giảm giá).
Viết chương trình tạo 2 sản phẩm có giảm giá và không giảm giá sau đó xuất thông
tin 2 sản phẩm ra màn hình

CODE:

package vtk41.lab4;
import java.util.Scanner;
public class SanPham {
String tenSP;
double donGia;
double giamGia;
public SanPham(String tenSP, double donGia, double giamGia) {
this.tenSP = tenSP;
this.donGia = donGia;
this.giamGia = giamGia;
}
public SanPham(String tenSP, double donGia) {
this.tenSP = tenSP;
this.donGia = donGia;
this.giamGia = 0;

}
public static void main(String[] args) {
3
Nguyễn Lê Trùng Dương

System.out.println("thue nhap khau ");


}
double getThueNhapKhau(){
return donGia * 0.1;
}
public void xuat(){
System.out.printf("\n Ten San Pham: %s ", tenSP);
System.out.printf("Don Gia: %.1f vnd ", donGia);
System.out.printf("Giam Gia: %.1f vnd ", giamGia);
System.out.printf("thue nhap khau: %.1f vnd \n", getThueNhapKhau());
}
public void nhap(){
Scanner scanner = new Scanner(System.in);
System.out.println("Nhap ten san pham: ");
tenSP = scanner.nextLine();
System.out.println("Nhap don gia: ");
donGia = scanner.nextDouble();
System.out.println("Nhap giam gia: ");
giamGia= scanner.nextDouble();
}
}

package vtk41.lab4;
public class NewClass {
public static void main(String[] args) {
SanPham sp1 = new SanPham("sp1", 500, 10);
sp1.xuat();
SanPham sp2;
sp2 = new SanPham("sp2", 800);
sp2.xuat();
}
}

Kết Quả :

4
Nguyễn Lê Trùng Dương

BÀI 4 (2 ĐIỂM)
Nâng cấp lớp SanPham bằng cách khai báo các trường dữ liệu với đặc tả truy xuất
là private để hạn chế truy xuất trực tiếp đến các trường này sau đó bổ sung các
phương thức getter và setter để đọc ghi dữ liệu các trường.
CODE:
package vtk41.lab4;
import java.util.Scanner;
public class SanPham {
private String tenSP;
private double donGia;
private double giamGia;
public String getTenSP(){
return tenSP;
}
public void setTenSp(String tenSP){
this.tenSP = tenSP;
}
public double getDongia(){
return donGia;
}
public void setDonGia(){
this.donGia = donGia;
}
public SanPham(String tenSP, double donGia, double giamGia) {
this.tenSP = tenSP;
this.donGia = donGia;
this.giamGia = giamGia;
}
public SanPham(String tenSP, double donGia) {
this.tenSP = tenSP;
this.donGia = donGia;
this.giamGia = 0;

}
public static void main(String[] args) {
System.out.println("thue nhap khau ");
}
double getThueNhapKhau(){
return donGia * 0.1;
}
public void xuat(){
System.out.printf("\n Ten San Pham: %s ", tenSP);
System.out.printf("Don Gia: %.1f vnd ", donGia);
System.out.printf("Giam Gia: %.1f vnd ", giamGia);
System.out.printf("thue nhap khau: %.1f vnd \n", getThueNhapKhau());
}
public void nhap(){
Scanner scanner = new Scanner(System.in);
System.out.println("Nhap ten san pham: ");
tenSP = scanner.nextLine();

5
Nguyễn Lê Trùng Dương

System.out.println("Nhap don gia: ");


donGia = scanner.nextDouble();
System.out.println("Nhap giam gia: ");
giamGia= scanner.nextDouble();
}
}

package vtk41.lab4;
public class NewClass {
public static void main(String[] args) {
SanPham sp1 = new SanPham("sp1", 500, 10);
sp1.xuat();
String ten = sp1.getTenSP();
System.out.println("Ten sp: " + ten);
sp1.setTenSp("New SP");
sp1.xuat();
SanPham sp2;
sp2 = new SanPham("sp2", 800);
sp2.xuat();
}
}
Kết Quả:

You might also like