Bài giảng Lập trình hướng đối tượng Chương 6 Trường Đại học Ngoại ngữ Tin học

45 284 1
Bài giảng Lập trình hướng đối tượng Chương 6  Trường Đại học Ngoại ngữ  Tin học

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Lập trình hướng đối tượng Chương 6 Đa hình cung cấp cho người học các kiến thức Khái niệm Đa hình, các bước xây dựng chương trình có tính đa hình, từ khóa ‘base’, phương thức trừu tượng (abstract method), từ khóa ‘new’ với phương thức.

Click to edit Master subtitle CHƯƠNG 6: style ĐA HÌNH Khoa Công nghệ thông tin Trường Đại học Ngoại ngữ - Tin học, TP.HCM NỘI DUNG Khái niệm Đa hình Các bước xây dựng chương trình có tính đa hình Từ khóa ‘base’ Phương thức trừu tượng (abstract method) Từ khóa ‘new’ với phương thức nguyên tắc lập trình hướng đối tượng Đóng gói (Encapsulation) Giao diện (Interface) Ẩn chi tiết lớp (Đóng gói), cung cấp phương thức cần thiết để dùng (Giao diện) Thừa kế (Inheritance) Tạo lớp thừa kế lớp có Đa hình (Polymorphism) Khả tạo lớp dẫn xuất, cài đặt method lớp sở theo cách khác (tùy lớp dẫn xuất) Khái niệm đa hình Khái niệm Đa hình Đa hình (polymorphism) poly = many morphism = forms Đa hình tượng đối tượng thuộc lớp khác có khả hiểu thơng điệp theo cách khác nhiều kiểu tồn đối tượng Khái niệm Đa hình LandRover dùng 2.0 L engine để move LandRover object Ford dùng V engine để move Ford object Honda dùng i-vtec để move Honda object Move Khái niệm Đa hình • Đa hình phương thức: Cùng phương thức thực khác loại đối tượng khác  Cùng nguyên mẫu phương thức cho lớp khác nhau: overriding phương thức • Đa hình đối tượng: nhìn nhận đối tượng theo nhiều kiểu khác Khái niệm Đa hình Phân biệt Overloading vs Overriding? Overloading (nạp chồng) phương thức: giữ tên giá trị trả về, thay đổi đối số Overriding (ghi đè) phương thức: giữ nguyên tên, giá trị trả đối số (không thay đổi nguyên mẫu phương thức) Khái niệm Đa hình Đa hình phương thức Các lớp dẫn xuất cài đặt phương thức lớp sở, lớp dẫn xuất có cách cài đặt khác Khái niệm Đa hình Nhờ đặc tính thừa kế giúp: Tạo lớp dựa lớp có (lớp sở), thừa hưởng lớp sở có Thêm số Field Method vào lớp Cài đặt lại phương thức lớp sở cung cấp 10 Bài tập ví dụ Lớp HinhTron (hình trịn) gồm thơng tin: Bán kính Lớp HinhChuNhat(hình chữ nhật) gồm thơng tin: Chiều ngang Chiều đứng Hãy sử dụng kỹ thuật kế thừa đa hình để viết chương trình cho phép nhập thơng tin đối tượng hình trịn hình chữ nhật Sau tính in thơng tin diện tích hình 31 Bài tập ví dụ … Xác định lớp thông tin lớp Lớp HinhTron Thuộc tính: r (bán kính), s (diện tích) Phương thức: Nhap (nhập thơng tin), TinhDienTich (tính diện tích) Lớp HinhChuNhat Thuộc tính: m (chiều ngang), n (chieu dung), s (diện tích) Phương thức: Nhap (nhập thơng tin), TinhDienTich (tính diện tích) 32 Bài tập ví dụ … Áp dụng kỹ thuật kế thừa  Xác định điểm chung lớp Lớp HinhTron Thuộc tính: r (bán kính), s (diện tích) Phương thức: Nhap (nhập thơng tin), TinhDienTich (tính diện tích) Lớp HinhChuNhat Thuộc tính: m (chiều ngang), n (chieu dung), s (diện tích) Phương thức: Nhap (nhập thơng tin), TinhDienTich (tính diện tích) 33 Bài tập ví dụ … Tạo lớp từ điểm chung Lớp HinhHoc Thuộc tính: s (diện tích) Phương thức: Nhap (nhập thơng tin), TinhDienTich (tính diện tích) Trong đó: phương thức khơng làm  abstract method  abstract class HinhHoc 34 Bài tập ví dụ … Sơ đồ lớp 35 Lớp HinhHoc public abstract class HinhHoc { protected double s; //Định nghĩa constructor //và property get, set public abstract void Nhap(); public abstract void TinhDienTich(); } 36 Lớp HinhTron public class HinhTron: HinhHoc { private double r; //Định nghĩa constructor //và property get, set public override void Nhap() { //Định nghĩa phương thức } public override void TinhDienTich() { //Định nghĩa phương thức } } 37 Lớp HinhChuNhat public class HinhChuNhat:HinhHoc { private double m; private double n; //Định nghĩa constructor //và property get, set public override void Nhap() { //Định nghĩa phương thức } public override void TinhDienTich() { //Định nghĩa phương thức } } 38 Cú pháp phương thức chung Có trường hợp chung phương thức lớp sở lớp dẫn xuất kế thừa: TH1: Chung hoàn toàn cách thức cài đặt Chỉ cài đặt phương thức lớp sở TH2: Chung phần cách thức cài đặt Lớp sở (virtual) – Lớp dẫn xuất (override) TH3: Chỉ chung nguyên mẫu phương thức khác cách thức cài đặt Lớp sở (abstract) – Lớp dẫn xuất (override) !!! Trường hợp lớp sở chuyển sang lớp abstract 39 Bài tập Thiết kế chương trình quản lý danh sách hình học, gồm loại hình sau: Hình chữ nhật: chiều ngang chiều đứng Hình trịn: bán kính Hình tam giác: chiều dài cạnh a, b c Chức năng: cho phép nhập, xuất danh sách hình mảng chiều Cho biết số lượng hình có diện tích lớn loại 40 Từ khóa new với phương thức Từ khóa ‘new’ với phương thức Chúng ta đặt từ khóa ‘new’ trước phương thức public class LandRover : Car { public new void Move() { Console.WriteLine(“Move: LandRover (2.0 L engine)"); } } Ý nghĩa: “Tôi phương thức lớp dẫn xuất, hồn tồn khơng có liên quan đến phương thức tên lớp sở” 42 Từ khóa ‘new’ với phương thức Chú ý: Khi dùng ‘new’ với phương thức khơng thực tính đa hình Chúng ta dùng từ khóa ‘new’ trường hợp Nếu muốn cài đặt phương thức hoàn toàn khơng liên quan nên dùng tên khác 43 ĐIỂM CHÍNH Đa hình nghĩa tạo lớp dẫn xuất cài đặt phương thức lớp sở theo cách khác Phương thức lớp sở đánh dấu virtual cho phép lớp dẫn xuất dùng từ khóa override để cung cấp cài đặt khác Các bước xây dựng tính đa hình 44 ĐIỂM CHÍNH Lớp đánh dấu abstract Không thể dùng để tạo đối tượng Phương thức đánh dấu abstract • Khơng có cài đặt • Lớp dẫn xuất phải cài đặt Từ khóa ‘new’ đứng trước phương thức để báo Đây phương thức Phương thức không liên quan đến phương thức tên lớp sở 45 ... thức trừu tượng (abstract method) Trừu tượng gì? Loại bỏ thơng tin cụ thể, giữ lại thơng tin chung Mức độ trừu tượng hố thể kế thừa 26 Vấn đề trừu tượng Mức độ trừu tượng cao  thông tin chung... hình Các bước xây dựng chương trình có tính đa hình Từ khóa ‘base’ Phương thức trừu tượng (abstract method) Từ khóa ‘new’ với phương thức nguyên tắc lập trình hướng đối tượng Đóng gói (Encapsulation)... thức: Cùng phương thức thực khác loại đối tượng khác  Cùng nguyên mẫu phương thức cho lớp khác nhau: overriding phương thức • Đa hình đối tượng: nhìn nhận đối tượng theo nhiều kiểu khác Khái niệm

Ngày đăng: 15/05/2017, 10:22

Từ khóa liên quan

Mục lục

  • Slide 1

  • NỘI DUNG

  • 3 nguyên tắc lập trình hướng đối tượng

  • Khái niệm đa hình

  • Khái niệm Đa hình

  • Khái niệm Đa hình

  • Khái niệm Đa hình

  • Khái niệm Đa hình

  • Khái niệm Đa hình

  • Khái niệm Đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

  • Các bước xây dựng tính đa hình

Tài liệu cùng người dùng

Tài liệu liên quan