Bài giảng Lập trình hướng đối tượng - Chương 5 trình bày về tính đa hình trong lập trình hướng đối tượng. Những nội dung chính trong chương này gồm có: Đa hình (upcasting/downcasting, liên kết động), lớp và phương thức trừu tượng (lớp/phương thức trừu tượng, template method), đa kế thừa và giao diện. Mời các bạn cùng tham khảo.
ĐA HÌNH Nội dung Đa hình upcasting / downcasting liên kết động Lớp phương thức trừu tượng lớp/phương thức trừu tượng template method Đa kế thừa giao diện Kế thừa đa hình Tài liệu tham khảo Thinking in Java, chapter 7, Java how to program, chapter http://www.mediafire.com/?tkl6b4a7ace60 Kế thừa đa hình Polymorphism (đa hình) Polymorphism: nhiều hình thức, nhiều kiểu tồn Đa hình lập trình đa hình hàm: hàm trùng tên, phân biệt danh sách tham số đa hình đối tượng nhìn nhận đối tượng theo nhiều kiểu khác đối tượng khác giải nghĩa thông điệp theo cách thức khác Kế thừa đa hình Up casting Up casting khả nhìn nhận đối tượng thuộc lớp dẫn xuất đối tượng thuộc lớp sở dùng đối tượng lớp dẫn xuất để truyền tham số dùng đối tượng lớp dẫn xuất làm thuộc tính Kế thừa đa hình Person -name -birthday +setName() +setBirthday() Person p; Employee e = new Employee(); p = (Person) e; p.setName( ); p.setSalary( ); // compile error Employee -salary +setSalary() +getDetail() Kế thừa đa hình String teamInfo(Person p1, Person p2) { return "Leader: " + p1.getName() + "; member: " + p2.getName(); } Employee e1, e2; Manager m1, m2; … System.out.println(teamInfo(e1, e2)); teamInfo(m1, m2); teamInfo(m1,e2); Kế thừa đa hình Đa hình liên kết động Khả giải nghĩa thông điệp theo cách thức khác Person p1 = new Person(); Person p2 = new Employee(); Person p3 = new Manager(); System.out.println(p1.getDetail()); System.out.println(p2.getDetail()); System.out.println(p3.getDetail()); Kế thừa đa hình class EmployeeList { Employee list[]; public void add(Employee e) { } public void print() { for (int i=0; i