Bài giảng Lập trình hướng đối tượng - Bài 6: Mảng các đối tượng - TS. Nguyễn Mạnh Hùng
Bạn đang xem tài liệu "Bài giảng Lập trình hướng đối tượng - Bài 6: Mảng các đối tượng - TS. Nguyễn Mạnh Hùng", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_lap_trinh_huong_doi_tuong_bai_6_mang_cac_doi_tuong.pdf
Nội dung text: Bài giảng Lập trình hướng đối tượng - Bài 6: Mảng các đối tượng - TS. Nguyễn Mạnh Hùng
- 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)
- Nộ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 2
- Mảng các đối tượng
- Khai 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 } 4
- Khai 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; } } 5
- Khai 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); } } 6
- Mả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 java Test Kết quả là gì? 7
- Bà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 8
- Liên kết giữa các đối tượng
- 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? 10
- Ví dụ (2) Sinh viên: Môn học: Tên Tên Ngày sinh Hệ số Giới tính Phòng học Chức năng: Chức năng: get/set tên get/set tên get/set ngày sinh get/set hệ số get/set giới tính get/set phòng học Show thông tin cá nhân 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 11
- Ví dụ (3) 12
- 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); } } 13
- 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); } } 14
- 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 } 15
- 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 16
- 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 17
- Questions?