Lập trình hướng đối tượng Mảng các đối tượng
Viết các phương thức get/set cho các
thuộc tính student và subject
Viết chương trình nhập điểm cho 1 sinh
viên học 5 môn học
Viết chương trình nhập điểm cho một môn
học có 5 sinh viên
18 trang |
Chia sẻ: phanlang | Lượt xem: 2002 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Lập trình hướng đối tượng Mảng các đối tượng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Lập trình hướng đối tượng
Mảng các đối tượng
Giảng viên: TS. Nguyễn Mạnh Hùng
Học viện Công nghệ Bưu chính Viễn thông (PTIT)
2Nội dung
Mảng các đối tượng
Quan hệ liên kết giữa các lớp
Bài tập
Mảng các đối tượng
4Khai báo lớp (1)
public class Human{ // lớp người
private String name; // tên
private String birthday; // ngày sinh
private int gende; // giới tính
}
// lớp sinh viên kế thừa từ lớp người
public class Student extends Human{
private float finalNote; // điểm trung bình chung
}
5Khai báo lớp (2)
public class Human{ // lớp người
private String name; // tên
private String birthday; // ngày sinh
private int gende; // giới tính
public Human(String name, String birthday, int gende){
...
}
}
// lớp sinh viên kế thừa từ lớp người
public class Student extends Human{
private float finalNote; // điểm trung bình
public Student(String name, String birthday, int gende, float
finalNote){
super(name, birthday, gende);
this.finalNote = finalNote;
}
}
6Khai báo lớp (3)
public class Human{ // lớp người
private String name; // tên
private String birthday; // ngày sinh
private int gende; // giới tính
public void show(){
System.out.println("name: " + name + " birthday: " +
birthday + " gende: " + gende);
}
}
// lớp sinh viên kế thừa từ lớp người
public class Student extends Human{
private float finalNote; // điểm trung bình
public void show(){
System.out.println("name: " + getName() + " birthday: " +
getBirthday() + " gende: " + getGende() + " note: " + finalNote);
}
}
7Mảng đối tượng
public class Test{
public static void main(String args[]){
// khai báo các đối tượng của lớp sinh viên
Student[] myStudents = new Student[10];
for(int i=0; i<myStudents.length(); i++){
myStudents[i] = new Student("A", "1/1/2011", 1, 7.64);
...// do something more
myStudents[i].show();
}
}
}
Chạy chương trình:
>java Test
Kết quả là gì?
8Bài tập
Định nghĩa mỗi ô trong trò sudoku như một
lớp đối tượng
Cả ô số là một mảng hai chiều các đối
tượng
Liên kết giữa các đối tượng
10
Ví dụ (1)
Bài toán quản lí điểm của sinh viên:
Mỗi sinh viên có thể học nhiều môn học
Mỗi môn học có thể có nhiều sinh viên
Mỗi sinh viên, với mỗi môn học, có điểm
của môn học đó
Làm thế nào thiết kế các lớp tương ứng?
11
Ví dụ (2)
Sinh viên:
Tên
Ngày sinh
Giới tính
Chức năng:
get/set tên
get/set ngày sinh
get/set giới tính
Show thông tin cá nhân
Môn học:
Tên
Hệ số
Phòng học
Chức năng:
get/set tên
get/set hệ số
get/set phòng học
Show thông tin môn học
Điểm:
Sinh viên
Môn học
Điểm
Chức năng:
get/set Sinh viên
get/set Môn học
get/set điểm
12
Ví dụ (3)
13
Lớp Student
public class Student{ // lớp sinh viên
private String name; // tên
private String birthday; // ngày sinh
private int gende; // giới tính
// các phương thức khởi tạo
// các phương thức get/set
public void show(){
System.out.println("name: " + name + " birthday: " +
birthday + " gende: " + gende);
}
}
14
Lớp Subject
public class Subject{ // lớp môn học
private String name; // tên
private String room; // phòng học
private int coefficient; // hệ số tín chỉ
// các phương thức khởi tạo
// các phương thức get/set
public void show(){
System.out.println("name: " + name + " room: " + room + "
coefficient: " + coefficient);
}
}
15
Lớp Note
public class Note{ // lớp điểm
private Student student; // sinh viên
private Subject subject; // môn học
private int note; // điểm môn học
// các phương thức khởi tạo
// các phương thức get/set
}
16
Bài tập (1)
Viết các phương thức get/set cho các
thuộc tính student và subject
Viết chương trình nhập điểm cho 1 sinh
viên học 5 môn học
Viết chương trình nhập điểm cho một môn
học có 5 sinh viên
17
Bài tập (2)
Vẽ sơ đồ quan hệ và viết các thuộc tính của
lớp cho: Bài toán đặt phòng khách sạn
Mỗi khách sạn có nhiều phòng
Mỗi phòng có thể có nhiều khách hàng
khác nhau ở các thời điểm khác nhau
Mỗi khách hàng có thể ở nhiều phòng khác
nhau ở các thời điểm khác nhau
Mỗi khách hàng chỉ ở một phòng khách
sạn tại một thời điểm nhất định
Questions?
Các file đính kèm theo tài liệu này:
- b06_lthdt_mang_cac_doi_tuong_7717.pdf