Khi thiết kế các đối tượng trong hệ thống thông tin, việc xác định mối quan hệ giữa các đối tượng là một kỹ năng mà người thiết kế hoặc phân tích viên phải nắm vững. Một kiểu quan hệ phổ biến là kiểu Tổng quát hóa/Đặc tả. Loại định nghĩa một hệ thống phân cấp bao gồm một lớp cha và nhiều lớp con. Một lớp con kế thừa mọi thứ từ lớp cha của nó, được gọi là tính kế thừa trong phương pháp luận hướng đối tượng và lập trình hướng đối tượng. Bằng sự kế thừa, các thuộc tính của lớp cha sẽ không lặp lại trong bất kỳ lớp con nào của nó. Khi một đối tượng mới của lớp con được tạo, không cần thêm đối tượng của lớp cha Show
sơ đồ lớpMã Python sau đây chỉ cho bạn cách triển khai hai lớp. Người và Học sinh. Sinh viên kế thừa tất cả các thuộc tính, fname và lname, cũng như các phương thức, bộ khởi tạo và toString, từ Person. Ngoài ra, Student có thuộc tính riêng. năm Kế thừa cho phép chúng ta định nghĩa một lớp kế thừa tất cả các phương thức và thuộc tính từ một lớp khác Lớp cha là lớp được kế thừa từ đó, còn được gọi là lớp cơ sở Lớp con là lớp kế thừa từ lớp khác, còn gọi là lớp dẫn xuất Tạo một lớp chaBất kỳ lớp nào cũng có thể là lớp cha, vì vậy cú pháp giống như tạo bất kỳ lớp nào khác Thí dụTạo một lớp tên là lớp Người. def printname(self). #Sử dụng lớp Person để tạo một đối tượng, sau đó thực thi phương thức printname x = Person("John", "Doe") Tạo một lớp conĐể tạo một lớp kế thừa chức năng từ một lớp khác, hãy gửi lớp cha dưới dạng tham số khi tạo lớp con Thí dụTạo một lớp có tên là Sinh viên lớp(Người). Ghi chú. Sử dụng từ khóa Bây giờ lớp Sinh viên có các thuộc tính và phương thức giống như lớp Người Thí dụSử dụng lớp x = Sinh viên("Mike", "Olsen") Thêm chức năng __init__()Cho đến giờ chúng ta đã tạo một lớp con kế thừa các thuộc tính và phương thức từ lớp cha của nó. Chúng tôi muốn thêm hàm Ghi chú. Hàm Thí dụThêm hàm Sinh viên lớp(Người). Khi bạn thêm hàm Ghi chú. Hàm Để giữ tính kế thừa của hàm Thí dụSinh viên lớp(Người). Bây giờ chúng ta đã thêm thành công hàm __init__() và giữ nguyên tính kế thừa của lớp cha và chúng ta đã sẵn sàng thêm chức năng trong hàm Sử dụng hàm super()Python cũng có một hàm Thí dụSinh viên lớp(Người). Bằng cách sử dụng hàm Thêm thuộc tínhThí dụThêm một thuộc tính có tên là Sinh viên lớp(Người). Trong ví dụ bên dưới, năm Thí dụThêm tham số Sinh viên lớp(Người). x = Sinh viên("Mike", "Olsen", 2019) Tự mình thử »Thêm phương phápThí dụThêm một phương thức có tên là Sinh viên lớp(Người). def welcome(self). Nếu bạn thêm một phương thức trong lớp con trùng tên với một hàm trong lớp cha, thì tính kế thừa của phương thức cha sẽ bị ghi đè Kiểm tra bản thân với các bài tậpTập thể dụcCú pháp chính xác để tạo một lớp có tên là Sinh viên sẽ kế thừa các thuộc tính và phương thức từ một lớp có tên là Người? Lớp con có kế thừa các thuộc tính không?Một lớp con “kế thừa” tất cả các thuộc tính (phương thức, v.v.) của lớp cha . Điều này có nghĩa là một lớp con sẽ có mọi thứ mà “cha mẹ” của nó có. Sau đó, bạn có thể thay đổi (“ghi đè”) một số hoặc tất cả các thuộc tính để thay đổi hành vi.
Lớp con có kế thừa cả thuộc tính và phương thức không?Một lớp con kế thừa tất cả các thành viên (trường, phương thức và lớp lồng nhau) từ lớp cha của nó . Các hàm tạo không phải là thành viên, vì vậy chúng không được kế thừa bởi các lớp con, nhưng hàm tạo của lớp cha có thể được gọi từ lớp con.
Một lớp con có thể có các thuộc tính và mối quan hệ cụ thể của riêng nó không?Một lớp con có thể kế thừa từ nhiều lớp cha trong hệ thống phân cấp. Khi một lớp con kế thừa từ một hoặc nhiều lớp cha, nó sẽ kế thừa tất cả các thuộc tính của chúng. Ngoài các thuộc tính kế thừa, một lớp con cũng có thể định nghĩa các thuộc tính cụ thể của riêng nó .
Lớp con kế thừa từ lớp cha trong Python là gì?Một lớp con kế thừa mọi thứ từ lớp cha của nó, được gọi là kế thừa trong phương pháp hướng đối tượng và lập trình hướng đối tượng. Bằng sự kế thừa, các thuộc tính của lớp cha sẽ không lặp lại trong bất kỳ lớp con nào của nó. |