Bài giảng C# và môi trường Donet - Bài 6: Kế thừa và da hình
Số trang: 16
Loại file: ppt
Dung lượng: 196.00 KB
Lượt xem: 16
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:
Bài 6 "Kế thừa và đa hình" thuộc bài giảng C# và môi trường Donet. Cùng nắm kiến thức trong bài này thông qua việc tìm hiểu các nội dung sau: khái niệm kế thừa, cài đặt kế thừa, từ khóa protected, sealing class, từ khóa base, từ khóa new,... Mời các bạn tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng C# và môi trường Donet - Bài 6: Kế thừa và da hình Bài 6Kế thừa và Đa hình Ôn tập lại bài cũ • Lớp và đối tượng • Constructor và Destructor • Garbage Collector • Con trỏ this • Phương thức(Method) • Chồng phương thức(Method Overloading) • Chông toán tử(Operator Overloading) • Access modifier (phạm vi truy xuất) • Từ khóa ref và out Nội dung trình bày • Khái niệm kế thừa • Cài đặt kế thừa • Từ khóa protected • Sealing class • Từ khóa base • Từ khóa new • Method Overriding • Polymorphism(đa hình) Subject name / Session# / 3 of Totalpage Kế thừa và đa hình Khái niệm kế thừa • Kế thừa là một đặc điểm quan trọng của ngôn ngữ lập trình hướng đối tượng • Kế thừa là khả năng cho phép sử dụng lại những đọan code đã có sẵn do đó sẽ tiết kiệm thời gian lập trình • Lớp A kế thừa từ lớp B thì lớp A gọi là derived class(child class/subclass), lớp B gọi là base class(parent class/super class) • Có 2 loại kế thừa: Đơn kế thừa. Ví dụ kế thừa lớp Đa kế thừa. Ví dụ kế thừa Interface Kế thừa và đa hình Cài đặt kế thừa • : • Trong đó là classA kế thừa từ classB • Trong lớp classA có thể truy xuất đến các thành phần trong lớp classB nếu thành phần đó có phạm vi truy xuất là proteced hoặc public • Các construtor không được kế thừa • Ví dụ DEMO kế thừa Kế thừa và đa hình Từ khóa proteced • Để qui định phạm vi truy xuất các thành phần bên trong một lớp • Một thành phần(thuộc tính, phương thức) được Kế thừa và đa hình Sealing class • Một lớp có từ khóa sealed có nghĩa là lớp đó không cho phép các lớp khác kế thừa. … sealed class classOne { //Class Implementation } … Kế thừa và đa hình Từ khóa base • Dùng để truy cập đến các thành phần(thuộc tính, phương thức…) bên trong lớp cơ sở từ lớp dẫn xuất(lớp kế thừa) • Dùng để gọi constructor của lớp cơ sở khi tạo đối tượng của lớp dẫn xuất. • Không được sử dụng từ khóa base trong phương thức tĩnh. • Ví dụ DEMO từ khóa base Kế thừa và đa hình Từ khóa new • Dùng để che dấu đi các thuộc tính và phương thức của lớp cơ sở. • Do đó trong lớp dẫn xuất, muốn gọi các thuộc tính hoặc phương thức ở lớp cơ sở, sử dụng từ khóa base • Ví dụ minh họa từ khóa new Kế thừa và đa hình Method overriding • Là khả năng cho phép lớp dẫn xuất định nghĩa lại(override/redefine) các phương thức của lớp cơ sở. • Phương thức ở lớp cơ sở và lớp dẫn xuất có cùng một prototype(signature) nhưng thưng thực hiện các công việc khác nhau. • Để override (ghi đè) một phương thức ơ lớp cơ sở: Đặt từ khóa virtual trước phương thức trong lớp cơ sở Đặt từ khóa override trước phương thức muốn override trong lớp dẫn xuất Kế thừa và đa hình Overriding method • Cú pháp khai báo [access modifier] virtual [return-type] name( [parameters-list] ) { //virtual method implementation } [access modifier] override [return-type] name( [parameters-list] ) { //virtual method implementation } • Ví dụ DEMO method overriding Kế thừa và đa hình Polymorphism(đa hình) • Nói ở ngữ cảnh chung chung, đa hình là khả năng biến hóa thành nhiều hình dạng khác nhau. • Trong lập trình hướng đối tượng: thế nào là đa hình? Ví dụ chúng ta có một lớp shape(hình vẽ), trong lớp shape có phương thức Area(). Sau đó các lớp Square(hình vuông), Rectangle(hình CN), Circle(đường tròn) kế thừa từ lớp Shape. Trong lớp Square override phương thức Area() trong lớp shape và nó thực hiện công việc tính diện tích của hình vuông. Trong lớp Rectangle cũng override phương thức Area() của lớp shape và nó thực hiện công việc tính diện tích của hình chữ nhật Kế thừa và đa hình Lớp Circle override phương thức Area() của lớp shape và thực hiện công việc tính diện tích của hình tròn. Bây giờ khởi tạo đối tượng của 3 lớp Square objSquare = new Square(); Rectangle objRectangle = new Rectangle(); Circle objCircle = new Circle(); Shape objShape; objShapre = objSquare(); objShape.Area(); objShapre = objRectangle(); objShape.Area(); objShapre = objRectangle(); objShape.Area(); Kế thừa và đa hình Kết luận: • Đa hình là khả năng một biến tham chiếu thay hành vi tùy theo đối tượng mà nó đang tham chiếu đến. • Cho ...
Nội dung trích xuất từ tài liệu:
Bài giảng C# và môi trường Donet - Bài 6: Kế thừa và da hình Bài 6Kế thừa và Đa hình Ôn tập lại bài cũ • Lớp và đối tượng • Constructor và Destructor • Garbage Collector • Con trỏ this • Phương thức(Method) • Chồng phương thức(Method Overloading) • Chông toán tử(Operator Overloading) • Access modifier (phạm vi truy xuất) • Từ khóa ref và out Nội dung trình bày • Khái niệm kế thừa • Cài đặt kế thừa • Từ khóa protected • Sealing class • Từ khóa base • Từ khóa new • Method Overriding • Polymorphism(đa hình) Subject name / Session# / 3 of Totalpage Kế thừa và đa hình Khái niệm kế thừa • Kế thừa là một đặc điểm quan trọng của ngôn ngữ lập trình hướng đối tượng • Kế thừa là khả năng cho phép sử dụng lại những đọan code đã có sẵn do đó sẽ tiết kiệm thời gian lập trình • Lớp A kế thừa từ lớp B thì lớp A gọi là derived class(child class/subclass), lớp B gọi là base class(parent class/super class) • Có 2 loại kế thừa: Đơn kế thừa. Ví dụ kế thừa lớp Đa kế thừa. Ví dụ kế thừa Interface Kế thừa và đa hình Cài đặt kế thừa • : • Trong đó là classA kế thừa từ classB • Trong lớp classA có thể truy xuất đến các thành phần trong lớp classB nếu thành phần đó có phạm vi truy xuất là proteced hoặc public • Các construtor không được kế thừa • Ví dụ DEMO kế thừa Kế thừa và đa hình Từ khóa proteced • Để qui định phạm vi truy xuất các thành phần bên trong một lớp • Một thành phần(thuộc tính, phương thức) được Kế thừa và đa hình Sealing class • Một lớp có từ khóa sealed có nghĩa là lớp đó không cho phép các lớp khác kế thừa. … sealed class classOne { //Class Implementation } … Kế thừa và đa hình Từ khóa base • Dùng để truy cập đến các thành phần(thuộc tính, phương thức…) bên trong lớp cơ sở từ lớp dẫn xuất(lớp kế thừa) • Dùng để gọi constructor của lớp cơ sở khi tạo đối tượng của lớp dẫn xuất. • Không được sử dụng từ khóa base trong phương thức tĩnh. • Ví dụ DEMO từ khóa base Kế thừa và đa hình Từ khóa new • Dùng để che dấu đi các thuộc tính và phương thức của lớp cơ sở. • Do đó trong lớp dẫn xuất, muốn gọi các thuộc tính hoặc phương thức ở lớp cơ sở, sử dụng từ khóa base • Ví dụ minh họa từ khóa new Kế thừa và đa hình Method overriding • Là khả năng cho phép lớp dẫn xuất định nghĩa lại(override/redefine) các phương thức của lớp cơ sở. • Phương thức ở lớp cơ sở và lớp dẫn xuất có cùng một prototype(signature) nhưng thưng thực hiện các công việc khác nhau. • Để override (ghi đè) một phương thức ơ lớp cơ sở: Đặt từ khóa virtual trước phương thức trong lớp cơ sở Đặt từ khóa override trước phương thức muốn override trong lớp dẫn xuất Kế thừa và đa hình Overriding method • Cú pháp khai báo [access modifier] virtual [return-type] name( [parameters-list] ) { //virtual method implementation } [access modifier] override [return-type] name( [parameters-list] ) { //virtual method implementation } • Ví dụ DEMO method overriding Kế thừa và đa hình Polymorphism(đa hình) • Nói ở ngữ cảnh chung chung, đa hình là khả năng biến hóa thành nhiều hình dạng khác nhau. • Trong lập trình hướng đối tượng: thế nào là đa hình? Ví dụ chúng ta có một lớp shape(hình vẽ), trong lớp shape có phương thức Area(). Sau đó các lớp Square(hình vuông), Rectangle(hình CN), Circle(đường tròn) kế thừa từ lớp Shape. Trong lớp Square override phương thức Area() trong lớp shape và nó thực hiện công việc tính diện tích của hình vuông. Trong lớp Rectangle cũng override phương thức Area() của lớp shape và nó thực hiện công việc tính diện tích của hình chữ nhật Kế thừa và đa hình Lớp Circle override phương thức Area() của lớp shape và thực hiện công việc tính diện tích của hình tròn. Bây giờ khởi tạo đối tượng của 3 lớp Square objSquare = new Square(); Rectangle objRectangle = new Rectangle(); Circle objCircle = new Circle(); Shape objShape; objShapre = objSquare(); objShape.Area(); objShapre = objRectangle(); objShape.Area(); objShapre = objRectangle(); objShape.Area(); Kế thừa và đa hình Kết luận: • Đa hình là khả năng một biến tham chiếu thay hành vi tùy theo đối tượng mà nó đang tham chiếu đến. • Cho ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng C# Ngôn ngữ lập trình Môi trường Donet Ngôn ngữ lập trình C Cài đặt kế thừa Method OverridingTài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 276 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 268 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 266 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 232 0 0 -
Bài giảng Một số hướng nghiên cứu và ứng dụng - Lê Thanh Hương
13 trang 226 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 218 1 0 -
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 208 0 0 -
101 trang 200 1 0
-
Bài tập lập trình Windows dùng C# - Bài thực hành
13 trang 186 0 0 -
Giáo trình Lập trình C căn bản: Phần 1
64 trang 170 0 0