Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 35 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
35
Dung lượng
171,71 KB
Nội dung
1 Chương 2. Tổng quan về lập trình hướng đối tượng Cập nhật: 05 tháng 10 năm 2012 #2 Nội dung !"#$%&#"#'#()*+, - !#$%&#"#'#()$ &+.$/& 2 #3 Phương pháp lập trình (PPLT)? 0123Lj&7(859&+6:#1;<=>=?@ +A?>,(BC&!@D6() E@+AF#(6&(&B6&GH@#4(6&I"()(J 3 #4 Phương pháp lập trình? EKKBELBMBN@O+,=$%&() PPO@!.&$ &Q"&+6:4=?8(RST$%& () PPO@""=#'&R#6I"()@+A!ID% 4 #5 Các yêu cầu chính của phần mềm ;"CU&F(2G ;V(T&FW2G ;5X6FYW2G 5 #6 Các PPLT cổ điển O'#()2=; E$%&()@TZ2"! O'#()@W123&"!(6&Z2! [9&&;=>= 6 #7 Các PPLT cổ điển O'#()SUB@ E$%&()@T!.&"SUB@\SUB@@TZ2 "! O'#()@W"+]W$%&()&76JSUB@ [=ID@!.&8(R@.I!&^"@BSU 7 #8 Các PPLT cổ điển O'#()+%, E$%&()@T!.&^&+%,_%,@T!.&"S UB@ P1;@)("+%, 6`"@#4$%&35a&b?#:N 8 #9 Các PPLT cổ điển cd0e$%&()'#@6fJ?+,g?+,6"STf@ W8 +,(&)$%&h& Z2 =$%&()(J i&"#$%& #"# 9 #10 Cài đặt với pp lập trình tuyến tính (chỉ dùng 1 hàm main & biến toàn cục) 10 (&6j ?6j Y6j 6F(&kl(&G m E66(Fn#6nGj 6oE66OFGj E66(Fn#6nGj 6oP(FE66OFGGj E66(Fn#nGj oP(FE66OFGGj oFY6GF6KGB-j E66(OFnd(&mppppqn?Gj q [...]... Lớp đối tượng Kiểu dữ liệu c u tr c C c thông tin đư c quan tâm về 1 đối tượng Thu c tính Thành phần thu c tính c a kiểu c u tr c C c khả năng c a đối tượng Hành động C c phương thư c Phân c ng giữa c c đối tượng Yêu c u Gọi th c hiện phương thư c 29 Đ c điểm c a pp lập trình HĐT #30 Tính đóng gói (Encapsulation): Khả năng c t giữ riêng biệt dữ liệu và phương thư c t c động lên dữ liệu đó Do vậy chúng... thành c c lớp/ đối tượng Mỗi lớp/ đối tượng c c c tính năng và hành động chuyên biệt C c lớp c thể đư c sử dụng để tạo ra nhiều đối tượng c thể 27 Sự trừu tượng hoá #28 Thế giới th c Trừu tượng hóa Phần mềm Dữ liệu Thu c tính Th c thể Hành động hàm 28 Một số khái niệm #29 Thế giới th c PPLT Ngôn ngữ lập trình Đối tượng trong thế giới th c Đối tượng Biến c kiểu c u tr c Khái niệm chung về đối tượng. .. Đ c điểm c a pp lập trình HĐT # 32 Tính đa hình (pholymorphism): Cho phép gởi c ng một thông điệp đến những đối tượng kh c nhau c ng c chung một đ c điểm 32 Một số ngôn ngữ lập trình HĐT #33 C+ + C# , VB.Net, J#, VC++ Java JavaScript PHP … 33 C c bư c thiết kế đối tượng #34 Bư c 1: Xây dựng sơ đồ đối tượng X c định c c lớp đối tượng X c định c c quan hệ giữa c c lớp Bư c 2: ... } Console.WriteLine("Diem trung binh: {0: 0.00}", hs.dtb); } 21 PP Lập trình hướng đối tượng #22 Chương trình là một hệ thống những lớp đối tượng Mỗi một lớp đối tượng về mặt th c tế tương ứng với những đối tượng c xuất hiện trong th c tế 22 PP Lập trình hướng đối tượng #23 LT hướng đối tượng là xây dựng những lớp đối tượng và yêu c u chúng th c hiện những trách nhiệm c a mình LT hướng đối. .. tượng là phương pháp LT dựa trên kiến tr c lớp (class) và đối tượng (object) 23 Đối tượng là gì ? #24 Đối tượng trong thế giới th c: là một th c thể c thể mà ta c thể sờ, nhìn thấy hay c m nhận đư c Đối tượng phần mềm: dùng để biểu diễn c c đối tượng trong thế giới th c Mỗi đối tượng bao gồm 2 thành phần: thu c tính và hành động 24 Đối tượng là gì ? #25 VD: một người A Một người c c c. .. thu c tính: tên, tuổi, địa chỉ, màu mắt, … C c hành động: đi, nói, thở, … Một đối tượng là 1 th c thể bao gồm thu c tính & hành động 25 Lớp đối tượng là gì ? #26 Lớp đối tượng thể hiện cho một nhóm c c đối tượng giống nhau (c ng thu c tính & hành động) VD: ho c sinh A, ho c sinh B, ho c sinh C 26 Thiết kế phần mềm hướng đối tượng #27 Trừu tượng hóa dữ liệu và c c hàm/ thủ t c liên quan Chia... đến tham số: Trị, chiếu và giá trị trả về c a mỗi phương th c 18 C i đặt với pp lập trình thủ t c (dùng biến c u tr c c c bộ) #19 struct HOCSINH { public string hoten; public int van, toan; public float dtb; } static void Main(string[] args) { HOCSINH hs; Nhap(out hs); Xuat(hs); } 19 C i đặt với pp lập trình thủ t c (dùng biến c u tr c c c bộ) static void Nhap(out HOCSINH hs) #20 { Console.Write("Nhap... phải quan tâm tới “phải làm như thế nào” mà chỉ điều khiển bằng “làm vi c gì” Đóng gói giúp đồng nhất giữa dữ liệu và c c thao t c t c động lên dữ liệu đó Đ c điểm c a pp lập trình HĐT #31 Tính thừa kế (inheritance): Giúp tạo đối tượng mới từ đối tượng c sẵn, bổ sung những đ c tính c n thiết trong đối tượng mới Lớp đối tượng đã c đư c sử dụng lại gọi là lớp c sơ Lớp thừa kế lớp c sở... Console.ReadLine(); Console.Write("Nhap diem toan: "); hs.toan = int.Parse(Console.ReadLine()); Console.Write("Nhap diem van: "); hs.van = int.Parse(Console.ReadLine()); hs.dtb = (float)(hs.toan + hs.van) / 2; } static void Xuat(HOCSINH hs) { Console.WriteLine("Diem trung binh: {0: 0.00}", hs.dtb); } 20 C i đặt với pp lập trình thủ t c (dùng biến c u tr c toàn c c) #21 static void Nhap() struct HOCSINH... dtb); } 11 C i đặt với pp lập trình tuyến tính (chỉ dùng 1 hàm main và c u tr c toàn c c) # 12 static HOCSINH hs; static void Main(string[] args) { Console.Write("Nhap ho ten: "); hs.hoten = Console.ReadLine(); struct HOCSINH Console.Write("Nhap diem toan: "); { hs.toan = int.Parse(Console.ReadLine()); public string hoten; Console.Write("Nhap diem van: "); public int van, toan; hs.van = int.Parse(Console.ReadLine()); . 1 Chương 2. Tổng quan về lập trình hướng đối tượng Cập nhật: 05 tháng 10 năm 20 12 #2 Nội dung !"#$%&#"#'#()*+, -. mềm ;"CU&F(2G ;V(T&FW2G ;5X6FYW2G 5 #6 Các PPLT cổ điển O'#() 2= ; E$%&()@TZ2"! O'#()@W 12 3&"!(6&Z2! [9&&;=>= 6 #7 Các. bộ) 11 6F(&kl(&G m (&6j ?6j Y6j E66(Fn#6nGj 6oE66OFGj E66(Fn#6nGj 6oP(FE66OFGGj E66(Fn#nGj oP(FE66OFGGj oFY6GF6KGB-j E66(OFnd(&mppppqn?Gj q # 12 Cài đặt với pp lập trình tuyến tính (chỉ dùng 1 hàm main và cấu trúc toàn cục) 12 rEsj 6F(&kl(&G m E66(Fn#6nGj 6oE66OFGj E66(Fn#6nGj 6oP(FE66OFGGj E66(Fn#nGj oP(FE66OFGGj oFY6GF6KGB-j E66(OFnd(&mp