![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
Kế Thừa-Đa Hình phần 1
Số trang: 12
Loại file: pdf
Dung lượng: 255.26 KB
Lượt xem: 3
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Đặc biệt hóa và tổng quát hóa Sự kế thừa · · · · Thực thi kế thừa Gọi phương thức khởi dựng của lớp cơ sở Gọi phương thức của lớp cơ sở Điều khiển truy xuất
Nội dung trích xuất từ tài liệu:
Kế Thừa-Đa Hình phần 1KẾ THỪA – ĐA HÌNH · Đặc biệt hóa và tổng quát hóa · Sự kế thừa · Thực thi kế thừa · Gọi phương thức khởi dựng của lớp cơ sở · Gọi phương thức của lớp cơ sở · Điều khiển truy xuất · Đa hình · Kiểu đa hình · Phương thức đa hình · Từ khóa new và override · Lớp trừu tượng · Gốc của tất cả các lớp - lớp Object · Boxing và Unboxing dữ liệu · Boxing thực hiện ngầm định · Unboxing phải thực hiện tường minh · Các lớp lồng nhau · Câu hỏi & bài tập Trong chương trước đã trình bày cách tạo ra những kiểu dữ liệu mới bằngviệc xây dựng các lớp đối tượng. Tiếp theo chương này sẽ đưa chúng ta đi sâu vàomối quan hệ giữa những đối tượng trong thế giới thực và cách mô hình hóa nhữngquan hệ trong xây dựng chương trình. Chương 5 cũng giới thiệu khái niệm đặc biệthóa (specialization) được cài đặt trong ngôn ngữ C# thông qua sự kế thừa(inheritance). Khái niệm đa hình (polymorphism) cũng được trình bày trong chương 5, đây làkhái niệm quan trọng trong lập trình hướng đối tượng. Khái niệm này cho phép các thểhiện của lớp có liên hệ với nhau có thể được xử lý theo một cách tổng quát. Cuối cùng là phần trình bày về các lớp cô lập (sealed class) không được đặt biệthóa, hay các lớp trừu tượng sử dụng trong đặc biệt hóa. Lớp đối tượng Object là gốc củatất cả các lớp cũng được thảo luận ở phần cuối chương.Đặc biệt hóa và tổng quát hóa Lớp và các thể hiện của lớp tức đối tượng tuy không tồn tại trong cùng một khối,nhưng chúng tồn tại trong một mạng lưới sự phụ thuộc và quan hệ lẫn nhau. Ví dụ nhưcon người và xã hội động vật cùng sống trong một thế giới có quan hệ loài với nhau. Quan hệ là một (is-a) là một sự đặc biệt hóa. Khi chúng ta nói rằng mèo là một loại động vật có vú, có nghĩa là chúng ta đã nói rằng mèo là một trường hợp đặc biệt của loại động vật có vú. Nó có tất cả các đặc tính của bất cứ động vật có vú nào (như sinh ra con, có sữa mẹ vàcó lông...). Tuy nhiên, mèo có thêm các đặc tính riêng được xác định trong họ nhàmèo mà các họ động vật có vú khác không có được. Chó cũng là loại động vật có vú,chó cũng có tất cả các thuộc tính của động vật có vú, và riêng nó còn có thêm cácthuộc tính riêng xác định họ loài chó mà khác với các thuộc tính đặc biệt của loài khácví dụ như mèo chẳng hạn. Quan hệ đặc biệt hóa và tổng quát hóa là hai mối quan hệ đối ngẫu và phân cấpvới nhau. Chúng có quan hệ đối ngẫu vì đặc biệt được xem như là mặt ngược lại củatổng quát. Do đó, loài chó và mèo là trường hợp đặc biệt của động vật có vú.Ngược lại động vật có vú là trường hợp tổng quát từ các loài chó và mèo. Mối quan hệ là phân cấp bởi vì chúng ta tạo ra một cây quan hệ, trong đó cáctrường hợp đặc biệt là những nhánh của trường hợp tổng quát. Trong cây phân cấpnày nếu di chuyển lên trên cùng ta sẽ được trường hợp tổng quát hóa, và ngược lạinếu di chuyển xuống ngược nhánh thì ta được trường hợp đặc biệt hóa. Ta có sơ đồphân cấp minh họa cho loài chó, mèo và động vật có vú như trên: ĐỘN G VẬT CÓ VÚ MÈO CH Ó Tương tự, khi chúng ta nói rằng ListBox và Button là những Window, ta phải chỉ ranhững đặc tính và hành vi của những Window có trong cả hai lớp trên. Hay nói cáchkhác, Window là tổng quát hóa chia xẻ những thuộc tính của hai lớp ListBox vàButton, trong khi đó mỗi trường hợp đặc biệt ListBox và Button sẽ có riêng những thuộctính và hành vi đặc thù khác. Ngôn ngữ mô hình hóa thống nhất (UML) UML ( Unified Modeling Language) là ngôn ngữ chuẩn hóa để mô tả cho một hệ thống hoặc thương mại. Trong chương này sử dụng một số phần của mô hình UML để trình bày các biểu đồ quan hệ giữa các lớp. Trong UML, những lớp được thể hiện như các khối hộp, tên của lớp được đặt trên cùng của khối hộp, và các phương thức hay các biến thành viên được đặt bên trong hộp. Như trong hình 5.1, mô hình quan hệ tổng quát hóa và đặc biệt hóa được trình bày qua UML, ghi chú rằng mũi tên đi từ các lớp đặc biệt hóa đến lớp tổng quát hóa. Windo w Button List Box Hình 5.2: Quan hệ giữa thành phần cửa sổ Thông thường lưu ý rằng khi hai lớp chia xẻ chức năng với nhau, thì chúng đượctrích ra các phần chung và đưa vào lớp cơ sở chia xẻ. Điều này hết sức có lợi, vì nócung cấp khả năng cao để sử dụng lại các mã nguồn chung và dễ dàng duy trì mãnguồn. W i n d o w R Check Box Command ListBox adio B utton Hình 5.3 Dẫn xuất từ Window Giả sử chúng ta bắt đầu tạo một loạt các lớp đối tượng theo hình vẽ 5.3 như bên trên. Saukhi làm việc với RadioButton, CheckBox, và CommandButton một thời gian ta nhậnthấy chúng chia xẻ nhiều thuộc ...
Nội dung trích xuất từ tài liệu:
Kế Thừa-Đa Hình phần 1KẾ THỪA – ĐA HÌNH · Đặc biệt hóa và tổng quát hóa · Sự kế thừa · Thực thi kế thừa · Gọi phương thức khởi dựng của lớp cơ sở · Gọi phương thức của lớp cơ sở · Điều khiển truy xuất · Đa hình · Kiểu đa hình · Phương thức đa hình · Từ khóa new và override · Lớp trừu tượng · Gốc của tất cả các lớp - lớp Object · Boxing và Unboxing dữ liệu · Boxing thực hiện ngầm định · Unboxing phải thực hiện tường minh · Các lớp lồng nhau · Câu hỏi & bài tập Trong chương trước đã trình bày cách tạo ra những kiểu dữ liệu mới bằngviệc xây dựng các lớp đối tượng. Tiếp theo chương này sẽ đưa chúng ta đi sâu vàomối quan hệ giữa những đối tượng trong thế giới thực và cách mô hình hóa nhữngquan hệ trong xây dựng chương trình. Chương 5 cũng giới thiệu khái niệm đặc biệthóa (specialization) được cài đặt trong ngôn ngữ C# thông qua sự kế thừa(inheritance). Khái niệm đa hình (polymorphism) cũng được trình bày trong chương 5, đây làkhái niệm quan trọng trong lập trình hướng đối tượng. Khái niệm này cho phép các thểhiện của lớp có liên hệ với nhau có thể được xử lý theo một cách tổng quát. Cuối cùng là phần trình bày về các lớp cô lập (sealed class) không được đặt biệthóa, hay các lớp trừu tượng sử dụng trong đặc biệt hóa. Lớp đối tượng Object là gốc củatất cả các lớp cũng được thảo luận ở phần cuối chương.Đặc biệt hóa và tổng quát hóa Lớp và các thể hiện của lớp tức đối tượng tuy không tồn tại trong cùng một khối,nhưng chúng tồn tại trong một mạng lưới sự phụ thuộc và quan hệ lẫn nhau. Ví dụ nhưcon người và xã hội động vật cùng sống trong một thế giới có quan hệ loài với nhau. Quan hệ là một (is-a) là một sự đặc biệt hóa. Khi chúng ta nói rằng mèo là một loại động vật có vú, có nghĩa là chúng ta đã nói rằng mèo là một trường hợp đặc biệt của loại động vật có vú. Nó có tất cả các đặc tính của bất cứ động vật có vú nào (như sinh ra con, có sữa mẹ vàcó lông...). Tuy nhiên, mèo có thêm các đặc tính riêng được xác định trong họ nhàmèo mà các họ động vật có vú khác không có được. Chó cũng là loại động vật có vú,chó cũng có tất cả các thuộc tính của động vật có vú, và riêng nó còn có thêm cácthuộc tính riêng xác định họ loài chó mà khác với các thuộc tính đặc biệt của loài khácví dụ như mèo chẳng hạn. Quan hệ đặc biệt hóa và tổng quát hóa là hai mối quan hệ đối ngẫu và phân cấpvới nhau. Chúng có quan hệ đối ngẫu vì đặc biệt được xem như là mặt ngược lại củatổng quát. Do đó, loài chó và mèo là trường hợp đặc biệt của động vật có vú.Ngược lại động vật có vú là trường hợp tổng quát từ các loài chó và mèo. Mối quan hệ là phân cấp bởi vì chúng ta tạo ra một cây quan hệ, trong đó cáctrường hợp đặc biệt là những nhánh của trường hợp tổng quát. Trong cây phân cấpnày nếu di chuyển lên trên cùng ta sẽ được trường hợp tổng quát hóa, và ngược lạinếu di chuyển xuống ngược nhánh thì ta được trường hợp đặc biệt hóa. Ta có sơ đồphân cấp minh họa cho loài chó, mèo và động vật có vú như trên: ĐỘN G VẬT CÓ VÚ MÈO CH Ó Tương tự, khi chúng ta nói rằng ListBox và Button là những Window, ta phải chỉ ranhững đặc tính và hành vi của những Window có trong cả hai lớp trên. Hay nói cáchkhác, Window là tổng quát hóa chia xẻ những thuộc tính của hai lớp ListBox vàButton, trong khi đó mỗi trường hợp đặc biệt ListBox và Button sẽ có riêng những thuộctính và hành vi đặc thù khác. Ngôn ngữ mô hình hóa thống nhất (UML) UML ( Unified Modeling Language) là ngôn ngữ chuẩn hóa để mô tả cho một hệ thống hoặc thương mại. Trong chương này sử dụng một số phần của mô hình UML để trình bày các biểu đồ quan hệ giữa các lớp. Trong UML, những lớp được thể hiện như các khối hộp, tên của lớp được đặt trên cùng của khối hộp, và các phương thức hay các biến thành viên được đặt bên trong hộp. Như trong hình 5.1, mô hình quan hệ tổng quát hóa và đặc biệt hóa được trình bày qua UML, ghi chú rằng mũi tên đi từ các lớp đặc biệt hóa đến lớp tổng quát hóa. Windo w Button List Box Hình 5.2: Quan hệ giữa thành phần cửa sổ Thông thường lưu ý rằng khi hai lớp chia xẻ chức năng với nhau, thì chúng đượctrích ra các phần chung và đưa vào lớp cơ sở chia xẻ. Điều này hết sức có lợi, vì nócung cấp khả năng cao để sử dụng lại các mã nguồn chung và dễ dàng duy trì mãnguồn. W i n d o w R Check Box Command ListBox adio B utton Hình 5.3 Dẫn xuất từ Window Giả sử chúng ta bắt đầu tạo một loạt các lớp đối tượng theo hình vẽ 5.3 như bên trên. Saukhi làm việc với RadioButton, CheckBox, và CommandButton một thời gian ta nhậnthấy chúng chia xẻ nhiều thuộc ...
Tìm kiếm theo từ khóa liên quan:
Công nghệ thông tin kỹ thuật lập trình ngôn ngữ lập trình ngôn ngữ C# C# Kế Thừa-Đa Hình phần 1Tài liệu liên quan:
-
52 trang 438 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 326 0 0 -
74 trang 307 0 0
-
96 trang 304 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 298 0 0 -
Tài liệu dạy học môn Tin học trong chương trình đào tạo trình độ cao đẳng
348 trang 291 1 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 290 0 0 -
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 282 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 278 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 278 0 0