1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng lập trình hướng đối tượng chương 7 nguyễn minh thành

15 169 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 191,23 KB

Nội dung

1 Tính Đa Hình Môn Lập Trình Hướng Đối Tượng – Chương Nguyễn Minh Thành [M] : Thanhnm@itc.edu.vn Nội Dung Tính Đa Hình Lớp Trừu Tượng Đặt vấn đề • Một Vườn bách thú cần quản lý loại vật nuôi : mèo, chó, chuột, khỉ… • Chương trình xây dựng lớp sở Động vật Các lớp lại Mèo,Chó, Khỉ… kế thừa từ lớp động vật • Yêu cầu : ▫ Làm để lưu danh sách bao gồm nhiều loài vật dùng lúc mảng liệu ? ▫ Làm gọi phương thức Lấy Tuổi Thọ lớp sở tương ứng ? Định Nghĩa Tính Đa Hình • Tính đa hình khả để sử dụng chung giao diện cho nhiều nội dung cài đặt khác dựa vào phương thức ảo (virtual) chế kết nối trễ (late binding) • Nói cách khác, chế cho phép gởi loại thông điệp tới nhiều đối tượng khác mà đối tượng lại có cách xử lý riêng theo ngữ cảnh tương ứng chúng 5 Định Nghĩa Tính Đa Hình • Tính đa hình khả để sử dụng chung giao diện cho nhiều nội dung cài đặt khác dựa vào phương thức ảo (virtual) chế kết nối trễ (late binding) • Nói cách khác, chế cho phép gởi loại thông điệp tới nhiều đối tượng khác mà đối tượng lại có cách xử lý riêng theo ngữ cảnh tương ứng chúng 6 Ví dụ • Nhận xét đoạn code sau static void Main() { AnPham a = new AnPham(); a.LayRa(); TapChi t = new TapChi(); t.LayRa(); a = t; a.LayRa(); } Ví dụ Class Animal { //Định nghĩa Dữ liệu public Animal() { } public virtual void Speak() { Console.Write(‘Animal’); } } Class Cat : Animal { //Định nghĩa Dữ liệu public Cat() { } public override void Speak() { Console.Write(‘Meoooo’); } } Ví dụ Class Dog : Animal { //Định nghĩa Dữ liệu public Dog() { } public virtual void Speak() { Console.Write(‘Gooooo’); } } Class Bear : Animal { //Định nghĩa Dữ liệu public Bear() { } public override void Speak() { Console.Write(‘Gruuuuuud’); } } Ví dụ static void Main() { Animal a = new Cat(); // ????? a.Speak(); //?????? } 10 Ví dụ static void Main() { Animal[] a = new Animal[3]; a[0] = new Cat(); a[1] = new Dog(); a[2] = new Bear(); for(int i=0;i[...]... ListBox(1,2,"First List Box"); winArray[1] = new ListBox(3,4,"Second List Box"); winArray[2] = new Button(5,6); for (int i = 0;i < 3; i++) { winArray[i].DrawWindow( ); } } } 14 FAQs 15 Hết chương 7 Môn Lập Trình Hướng Đối Tượng ...11 Lớp trừu tượng • Lớp trừu tượng là lớp không cần cài đặt bất kì một phương thức nào • Lớp trừu tượng làm cơ sở cho các lớp kế thừa mà nó không thể có bất kỳ một thể hiện nào tồn tại • Lớp trừu tượng chứa các phương thức trừu tượng abstract class COSO { protected kiểu data1; protected kiểu data2; public abstract void... left, string contents) : base(top, left) { listBoxContents = contents; } public override void DrawWindow( ) { Console.WriteLine("Writing string to the listbox: {0}", listBoxContents); } } 13 Lớp trừu tượng (tt) public class Button : Window { public Button( int top, int left): base(top, left) {} public override void DrawWindow( ) { Console.WriteLine("Drawing a button at {0}, {1}\n", top, left); } }... data2; public abstract void Method1(); public abstract void Method2(); } class DANXUAT : COSO { private kiểu data3; public override void Method1() {…} public override void Method2() {…} } 12 Lớp trừu tượng (tt) abstract class Window { protected int top, left; public Window(int top, int left) { this.top = top; this.left = left; } abstract public void DrawWindow( ); } class ListBox : W indow { private ... Button(5,6); for (int i = 0;i < 3; i++) { winArray[i].DrawWindow( ); } } } 14 FAQs 15 Hết chương Môn Lập Trình Hướng Đối Tượng ... //?????? } 11 Lớp trừu tượng • Lớp trừu tượng lớp không cần cài đặt phương thức • Lớp trừu tượng làm sở cho lớp kế thừa mà có thể tồn • Lớp trừu tượng chứa phương thức trừu tượng abstract class... kết nối trễ (late binding) • Nói cách khác, chế cho phép gởi loại thông điệp tới nhiều đối tượng khác mà đối tượng lại có cách xử lý riêng theo ngữ cảnh tương ứng chúng 5 Định Nghĩa Tính Đa Hình

Ngày đăng: 04/12/2015, 20:05

TỪ KHÓA LIÊN QUAN