30/09/2018, 18:36

Cần giúp đỡ về chương trình Tính tiền lương nhân viên

Mình đang có một bài yêu cầu tính tiền lương nhân viên của một công ty.
gồm có nhân viên bán full time và part time.
Dùng mảng để nhập thông tin nhân viên
In ra tiền lương của nhân viên ra màn hình

Ban đầu mình tạo cái class employees gồm có 2 thuộc tính là ID và name
Tiếp đến tạo thêm 2 cái class parttime và fulltime kế thừa từ cái class trên

nhưng cuối cùng mình không biết kế thừa như thế nào nữa. Vì mình không rõ và không biết nhiều về cái kế thừa này.
Bạn nào biết có thể vui lòng giúp minh với. Mình làm mấy ngày nay mà không được

... viết 20:42 ngày 30/09/2018

Để hiểu hơn về kế thừa trong trường hợp này, mình nghĩ bạn cần tìm hiểu thêm về abstract class, interface.

Về phương pháp thì mình thử đưa ra giai pháp thế này:

  • Đặt class employees là abstract:
    Tạo phương thức tính tiền lương là abstract.
  • Lớp fulltime và parttime kế thừa tử lớp employee phải định nghĩa lại riêng phương thức tính tiền này.

Chỉ thế thôi, còn phải xem tiêu chí tính lương của bạn đề ra là như thế nào nữa.

Lê Thành Long viết 20:52 ngày 30/09/2018

nhưng sao mình dùng abstract thì mình tạo đối tượng ở hàm main cho class employees bị báo lỗi không thể khai báo được

... viết 20:40 ngày 30/09/2018

Lớp trừu tượng không tạo ra đối tượng được.
Bạn có thể dùng:

employees e = new parttime();
employees e2 = new fulltime();

Nếu 2 class này đã định nghĩa hàm trừu tượng trong lớp cha trừu tượng.

Lê Thành Long viết 20:43 ngày 30/09/2018

phương thức tính tiền lương là abstract.

mình tạo phương thức tính tiền lương là abstract. Sau đó mình overide nó qua bên fulltime và parttime thế sao chương trình phải bắt mình override 2 lần thế

@Override
public double calculateSalary() {
	// TODO Auto-generated method stub
	return 0;
}
@Override
public double caculateSalary() {
	// TODO Auto-generated method stub
	return 0;
}
... viết 20:49 ngày 30/09/2018

Trong class employees thì phương thức tính lương để là

public abstract double tinhLuong;

Bất kỳ lớp con nào kế thừa lớp trừu tượng thì đều phải định nghĩa là phương thức trừu tượng cho riêng nó.
Phương thức trừu tượng là phương thức tổng quát hóa cho tất cả các lớp con.
Cũng chính vì nó tổng quát quá nên không thể định nghĩa chi tiết đc (việc này phải để lớp con tự thực hiện)

... viết 20:48 ngày 30/09/2018

Có cái bài này của ông thầy trường mình làm về quản lý nhân viên. Cũng dùng đủ các kiến thức cơ bản trong OOP như interface, abstract, inheritance … Bạn coi qua mà tham khảo.

Bài liên quan
0