Lập
tŕnh hướng đối tượng ![]()
Bài 1.
1.a
Viết các lớp Person, Employee, Manager như thiết kế trong sơ đồ.
Bổ sung các phương thức thích hợp
nếu thấy cần.
Định nghĩa lại các
phương thức toString() cho phù hợp
với dữ liệu
tại mỗi lớp.
Viết lớp PeopleTest để chạy thử các lớp trên, gợi ư nội dung:
Employee
newbie = new Employee
(“Newbie”, new Date(10,2,1989),
1000000);
Manager
boss = new Manager
(“Boss”, new Date(23,2,1979),
4000000);
boss.setAssistant(newbie);
Manager
bigBoss = new Manager
(“Big Boss”, new Date(3,12,1969),
10000000);
bigBoss.setAssistant(boss);
In thông tin của 3 đối tượng trên ra màn h́nh
1.b. Trong hàm main của lớp PeopleTest, tạo
1 mảng kiểu Person,
gắn
3 đối tượng ở trên vào mảng, rồi dùng
ṿng lặp để in ra thông tin về các đối
tượng trong mảng.
1.c. Tách các lớp Person, Employee vào trong package
peoples. Đặt Manager và PeopleTestvào
package mặc định. Chỉnh lại các
khai báo quyền truy nhập để chương tŕnh viết
ở trên lại chạy được.
Bài 2
1.a. Viết class Animal (động
vật) trong package animals có một thuộc tính kiểu String: name, và các
phương thức thành viên sau:
·
Phương
thức tạo (constructor) public Animal(String) khởi tạo thuộc tính name.
·
Phương
thức getName().
·
Phương
thức public void sayHello() viết
màn h́nh một lời chào “Well…
I don’t know what to say.”
Viết class AnimalsTest nằm
ngoài package animals
để chạy thử lớp Animal.
2.b. Viết hai lớp Cat (mèo) và Cow (ḅ) nằm
trong gói animals là các lớp con của Animal. Trong đó, định nghĩa lại
sayHello() để mèo kêu “Meow…” c̣n ḅ kêu “Mooo….”.
2.c. Viết các phương thức tạo
thích hợp để có thể khởi tạo các đối
tượng mà không cần cung cấp tham số. name mặc định sẽ nhận giá trị
“no name”.
2.d. Viết thêm (các) phương thức selfIntroduce() với chức năng in ra màn h́nh lời tự giới thiệu có dạng: “My name is …..I am a ….”