Tải bản đầy đủ (.ppt) (19 trang)

bai tap thuc hanh c 4

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (88.07 KB, 19 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

Nội dung chính



</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

1. Thừa kế là gì?



 C++ cho phép tạo ra một lớp mới từ các lớp


đã tồn tại.


 Lớp B kế thừa lớp A, có nghĩa là lớp B sẽ có


các thuộc tính và phương thức của A, ngoại
trừ các thành phần private.


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4></div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5></div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6></div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

2. Cài đặt thừa kế



 Cú pháp khai báo lớp dẫn xuất từ một lớp


cơ sở như sau:


<b>class </b>lớp_dẫn_xuất<b> : mức truy nhập </b>lớp_cơ_ sở


<b>Mức truy nhập </b> <b>Thành phần được thừa kế từ lớp cơ sở </b>


public giữ nguyên mức truy nhập


protected chuyển sang mức truy nhập protected


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

Ví dụ: thừa kế



</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9></div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

Gán đối tượng của lớp cơ sở


bằng lớp dẫn xuất




 Sau phép gán, các thành phần chung của


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11></div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12></div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

3. Đa thừa kế



<b>X</b>


<b>A2</b>
<b>A1</b>


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

Giải quyết xung đột



Gọi tường minh



 Ví dụ lớp X có phương thức x được thừa kế
 Lời gọi x từ một đối tượng của lớp B


B b;


b.A1 :: x;
b.A2 :: x;


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

Lớp cơ sở ảo



Lớp cơ sở ảo đảm bảo trong lớp dẫn



</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16></div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

Lớp cơ sở ảo



 Hàm tạo của lớp cơ sở chỉ được gọi trong



hàm tạo của lớp dẫn xuất trực tiếp từ nó.


 Hàm tạo của lớp cơ sở ảo thì được gọi ở tất


cả các lớp dẫn xuất nó.


 Quy tắc như sau:


 Hàm tạo của lớp cơ sở ảo được gọi đầu tiên


 Tiếp theo đó là hàm tạo của các lớp dẫn xuất trực


</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18></div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19></div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×