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

Giáo trình Lập trình hướng đối tượng - Nghề: Lập trình máy tính - CĐ Kỹ Thuật Công Nghệ Bà Rịa-Vũng Tàu

68 69 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 68
Dung lượng 668,42 KB

Nội dung

(NB) Mục tiêu của Giáo trình Lập trình hướng đối tượng là Trình bày các khái niệm trong lập trình hướng đối tượng. Sử dụng ngôn ngữ C# trong lập trình hướng đối tượng. Thiết kế lớp đối tượng và các thành phần của lớp. Viết chương trình những bài toán theo quan điểm lập trình hướng đối tượng. Cài đặt tính kế thừa, đa hình trong hướng đối tượng

ỦY BAN NHÂN DÂN TỈNH BR – VT TRƯỜNG CAO ĐẲNG NGHỀ GIÁO TRÌNH LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG NGHỀ LẬP TRÌNH MÁY TÍNH TRÌNH ĐỘ CAO ĐẲNG, TRUNG CẤP Ban hành kèm theo Quyết định số: 01 /QĐ­CĐN,  ngày 04 tháng 01 năm 2016   của Hiệu trưởng trường Cao đẳng nghề tỉnh Bà Rịa – Vũng Tàu Bà Rịa – Vũng Tàu, năm 2016 TUN BỐ BẢN QUYỀN Tài liệu này thuộc loại sách giáo trình nên các nguồn thơng tin có thể  được  phép dùng ngun bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo Mọi mục đích khác mang tính lệch lạc hoặc sử  dụng với mục đích kinh doanh  thiếu lành mạnh sẽ bị nghiêm cấm LỜI GIỚI THIỆU Lập trình theo phương pháp hướng đối tượng là một phương pháp lập trình  xuất hiện từ những năm 1990 và được hầu hết các ngơn ngữ lập trình hiện nay hỗ trợ   Giáo trình này sẽ giới thiệu các đặc trưng của phương pháp lập trình hướng đối tượng  như tính đóng gói, tính kế thừa và tính đa hình. Chúng tơi chọn ngơn ngữ  C# để  minh  họa, vì đây là ngơn ngữ lập trình hướng đối tượng dễ học và phổ dụng nhất hiện nay   Sau khi hồn tất giáo trình này, sinh viên sẽ  biết được cách mơ hình hóa các lớp đối   tượng trong thế  giới thực thành các lớp đối tượng trong C# và cách phối hợp các đối   tượng này để giải quyết vấn đề đang quan tâm Bà Rịa – Vũng Tàu, ngày   tháng   năm 2016 Tham gia biên soạn Nguyễn Bá Thủy MỤC LỤC MƠ ĐUN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã mơ đun: MĐ 16 Vị trí, tính chất của mơn học Lập trình hướng đối tượng là phương pháp lập trình mới trên bước đường tiến   hóa của việc lập trình máy tính, nhằm giúp chương trình trở  nên linh hoạt, tin cậy và  dễ phát triển. Tư tưởng lập trình hướng đối tượng được áp dụng cho hầu hết các ngơn  ngữ lập trình chạy trên mơi trường Windows như Visual Basic, Java, Visual C, C#  Vì  vậy việc nghiên cứu phương pháp lập trình mới này là thật sự cần thiết đối với những   người làm Tin học Mục tiêu mơn học + Trình bày các khái niệm trong lập trình hướng đối tượng  + Sử dụng ngơn ngữ C# trong lập trình hướng đối tượng  + Thiết kế lớp đối tượng và các thành phần của lớp  + Viết chương trình những bài tốn theo quan điểm lập trình hướng đối tượng  + Cài đặt tính kế thừa, đa hình trong hướng đối tượng  + Trình bày được sự cần thiết của các khái niệm: tốn tử, uỷ nhiệm hàm và sự kiện  trong lập trình hướng đối tượng  Phân tích, cài đặt và xây dựng được chương trình theo phương pháp hướng đối tượng  trên một ngơn ngữ lập trình cụ thể Nội dung của mơ đun: TT Tên bài Thời gian Hình thức  giảng dạy Tổng quan về các phương pháp lập trình Lý thuyết Căn bản về C#  Tích hợp Sử dụng các bổ từ truy cập  Tích hợp Thiết lập các phương thức của lớp  Tích hợp Thiết lập các thuộc tính của lớp Tích hợp Cài đặt lớp trong C#  Tích hợp Kiểm tra bài 6 TH Xây dựng các hàm khởi tạo của lớp Tích hợp Định nghĩa tốn tử  Tích hợp Sử dụng các loại tốn tử  Tích hợp 10 Kế thừa  Tích hợp Kiểm tra bài 10 TH 11 Đa hình  Tích hợp 12 Giao diện  Tích hợp 13 Uỷ nhiệm hàm (delegate)  Tích hợp 14 Sự kiện (event)  Tích hợp 15 Kiểm tra bài 14 TH 16 Cộng 75 BÀI 1 TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP LẬP TRÌNH Giới thiệu: Phương  pháp   lập  trình       kiểu     bản    lập  trình   vi   tính   (Computer   Programming). Programming với các khái niệm và sự trừu tượng dùng trong mơ tả các   thành phần của một chương trình (như: các đối tượng (objects), các hàm (functions),   các biến, các hằng,…) và các bước để tính tốn (như: các phép gán, biểu thức, các dịng   liệu,…). Một ngơn ngữ  lập trình có thể  hỗ  trợ  nhiều Phương thức (lập trình), ví   dụ: trong ngơn ngữ  C++ hay Object Pascal ta có thể  lập trình theo phương thức định  hướng thủ  tục hoặc theo phương thức hướng đối tượng, hay cũng có thể  chứa cả  2   kiểu viết này Cho dù là chọn phương thức lập trình nào, chúng ta vẫn mong muốn đạt đến  một kết quả là làm sao để có sản phẩm tối ưu, đầy đủ các tính năng so với u cầu đề  ra. Sự chọn lựa một phương thức lập trình phù hợp với u cầu đặt ra sẽ giúp các lập   trình viên có được một kết quả tốt nhất. Do vậy, thực sự khơng thể so sánh ưu nhược   điểm giữa các phương thức lập trình nếu khơng đặt nó vào một hồn cảnh cụ thể của   u cầu Mục tiêu:  ­ Trình bày được các phương pháp của lập trình hướng đối tượng, các đặt điểm nỗi   bật của phương pháp lập trình hướng đối tượng ­ Trình bày được các khái niệm cơ bản của lập trình hướng đối tượng ­ Rèn luyện tính cẩn thận, sáng tạo, tinh thần làm việc nhóm Nội dung: 1. Các phương pháp lập trình Xây dựng phần mềm bao gồm rất nhiều cơng đoạn: phân tích & thiết kế, cài đặt, kiểm   tra/thử nghiệm và bảo trì Cài đặt (programming/coding) chỉ là 1 phần trong q trình trên C++/C#/Java/v.v… là NNLT để viết chương trình PPLT là hệ thống hướng dẫn các giai đoạn cần thiết, cấu trúc của một chương trình PPLT là các cách tiếp cận giúp cho q trình cài đặt hiệu quả hơn Các u cầu chính của phần mềm: Tính tái sử dụng (reusability) Tính mở rộng (extensibility) Tính mềm dẻo (flexibility) 1.1. Lập trình tuyến tính Chương trinh la mơt day cac lênh ̀ ̀ ̣ ̃ ́ ̣ Lâp trinh la xây d ̣ ̀ ̀ ựng cac lênh trong day lênh ́ ̣ ̃ ̣ Khơng mang tính thiết kế 1.2. Lập trình cấu trúc Chương trinh la mơt hê thơng cac thu tuc/ ham ̀ ̀ ̣ ̣ ́ ́ ̉ ̣ ̀ Môi thu tuc/ ham la môt day cac lênh ̃ ̉ ̣ ̀ ̀ ̣ ̃ ́ ̣ Lâp trinh la xac đinh xem ch ̣ ̀ ̀ ́ ̣ ương trinh gơm bao nhiêu thu tuc/ ham ̀ ̀ ̉ ̣ ̀ Kết quả là hệ thống cấu trúc và mối quan hệ giữa các hàm/ thủ tục 1.3. Lập trình mơđun Chương trinh la mơt hê thơng nh ̀ ̀ ̣ ̣ ́ ững modul hay đơn thê.̉ Đơn thê la môt hê thông cac thu tuc/ ham ̉ ̀ ̣ ̣ ́ ́ ̉ ̣ ̀ Phân tích và tìm ra các đơn thể Gom nhóm các thành phần tương tự nhau về ý nghĩa, phạm vi… Bài tập củng cố:  Xet ch ́ ương trinh nhâp vao ho tên, điêm văn, điêm toan cua môt hoc sinh va xuât điêm ̀ ̣ ̀ ̣ ̉ ̉ ́ ̉ ̣ ̣ ̀ ́ ̉   trung binh t ̀ ương ưng. Hay viêt ch ́ ̃ ́ ương trinh trên băng cac ph ̀ ̀ ́ ương pháp 1.4. Lập trình hướng đối tượng Chương trinh la 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 co xuât hiên trong th ́ ́ ̣ ực tê.́ LT hương đôi t ́ ́ ượng la xây d ̀ ựng nhưng l ̃ ơp đôi t ́ ́ ượng va yêu câu chung th ̀ ̀ ́ ực hiên ̣   nhưng trach nhiêm cua minh ̃ ́ ̣ ̉ ̀ 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).  2. Các đặc điểm lập trình hướng đối tượng Đối tượng là gì ? Đố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 Ví dụ: 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  Hình 1.1: Mơ hình đối tượng Lớp đối tượng là gì ? return T; } } public override void Xuat() { Console.WriteLine(hoten + "\t" + giothue +"\t" + TienThue); } } CÂU HỎI, BÀI TẬP Xây dựng lớp máy tính có sử dụng tính đa hình các phương thức U CẦU, ĐÁNH GIÁ ­ Ý nghĩa của việc sử dụng đa hình ­ Các trường họp sử dụng đa hình 52 BÀI 12 GIAO DIỆN Giới thiệu Những account ngân hàng. Chúng ta sẽ viết mã để  cho phép các máy điện tốn   chuyển khoảng qua lại giữa các account. Có nhiều cơng ty thực thi account và đều  đồng ý với nhau là phải thi hành một giao diện IBankaccount có các phương thức nạp   hay rút tiền và thuộc tính trả về số tài khoản Mục tiêu  ­ Trình bày được vai trị của giao diện ­ Vận dụng giao diện cho các lớp có liên quan ­ Rèn luyện tính cẩn thận, sáng tạo, tinh thần làm việc nhóm 12.1. Khái niệm Giao diện là một dạng của lớp trừu tượng được sử  dụng với mục đích hỗ  trợ  tính đa hình. Trong giao diện khơng có bất cứ một cài đặt nào, chỉ có ngun mẫu của   các phương thức, chỉ mục, thuộc tính mà một lớp khác khi kế  thừa nó thì phải có cài   đặt cụ thể cho các thành phần này (tức là lớp kế  thừa giao diện tun bố  rằng nó hỗ  trợ các phương thức, thuộc tính, chỉ mục được khai báo trong giao diện) Khi một lớp kế thừa một giao diện ta nói rằng lớp đó thực thi (implement) giao diện 12.2. Cài đặt giao diện Ta dùng từ khóa interface để khai báo một giao diện với cú pháp sau: [MứcĐộTruyCập] interface TênGiaoDiện [:CácGiaoDiệnCơSở] { Nội dung } 53 MứcĐộTruyCập: public hoặc internal CácGiaoDiệnCơSở: danh sách các interface khác mà nó kế thừa Về mặt cú pháp, một giao diện giống như một lớp chỉ có phương thức trừu trượng Nó có thể chứa khai báo của phương thức, thuộc tính, chỉ mục, sự kiện (events) nhưng  khơng được chứa biến dữ liệu. Khi kế thừa một giao diện ta phải thực thi mọi phương   thức, thuộc tính,… của giao diện 12.3. Thực thi giao diện Mọi chiếc xe hơi hoặc xe máy đều có hành động (phương thức) khởi động và dừng. Ta   có thể dùng định nghĩa một giao diện kèm thêm một thuộc tính để cho biết chiếc xe đã  khởi động hay chưa: public interface IDrivable { void KhoiDong(); void Dung(); bool DaKhoiDong { get; } } Thuộc tính đã khởi động (DaKhoiDong) chỉ có phương thức get vì khi gọi phương thức KhoiDong() thì thuộc tính này sẽ có giá trị true, khi gọi phương thức Dung() thì thuộc tính này sẽ có giá trị false Khi đó, một lớp Car thực thi giao diện này phải cài đặt các phương thức và thuộc tính đã khai báo trong giao diện Idrivable trên: 54 public interface IDrivable { void KhoiDong(); void Dung(); bool DaKhoiDong { get; } } public class Car:IDrivable { public bool Started = false; public void KhoiDong() { Console.WriteLine("Xe ca khoi dong"); Started = true; } public void Dung() { Console.WriteLine("Xe ca dung"); Started = false; } public bool DaKhoiDong 55 { get{return Started;} } } public class Tester { public static void Main() { Car c = new Car(); c.KhoiDong(); Console.WriteLine("c.DaKhoiDong = " + c.DaKhoiDong); CÂU HỎI, BÀI TẬP Xây dựng lớp Acount chứa giao diện xử lý rút tiền U CẦU, ĐÁNH GIÁ ­ Các tính chất của giao diện ­ Thực thi giao diện 56 BÀI 13 ỦY NHIỆM HÀM (DELEGATE) Giới thiệu Delegate là một kiến thức căn bản cần nắm vững khi bạn nhập mơn C#, .NET   Mặc dù bạn có thể  cho rằng delegate khơng cần thiết và tránh sử  dụng nó (một cách  trực tiếp) nhưng cuối cùng bạn vẫn phải nhận thấy rằng: mình khơng thể  “sống” khi   thiếu delegate. Delegate khơng khó hiểu cũng như khơng khó để áp dụng, nếu bạn dành  một chút thời gian nghiên cứu Mục tiêu ­ Trình bày được ý nghĩa và khai báo của ủy nhiệm hàm (delegate) ­ Vận dụng thực thi ủy nhiệm hàm (delegate) cho lớp ­ Rèn luyện tính cẩn thận, sáng tạo, tinh thần làm việc nhóm 13.1. Định nghĩa Trong ngơn ngữ C#, ủy quyền là lớp đối tượng đầu tiên (first­class object), được  hỗ trợ đầy đủ bởi ngơn ngữ lập trình. Theo kỹ thuật thì ủy quyền là kiểu dữ liệu tham   chiếu được dùng để  đóng gói một phương thức với tham số và kiểu trả  về  xác định.  Chúng ta có thể đóng gói bất cứ  phương thức thích hợp nào vào trong một đối tượng   ủy quyền. Trong ngơn ngữ  C++ và những ngơn ngữ  khác, chúng ta có thể  làm được   điều này bằng cách sử  dụng con trỏ  hàm (function pointer) và con trỏ  đến hàm thành   viên. Khơng giống như  con trỏ  hàm như  trong C/C++,  ủy quyền là hướng đối tượng,   kiểu dữ liệu an tồn (type­safe) và bảo mật.  13.2. Khai báo Để tạo một ủy quyền ta dùng từ khóa delegate theo sau là kiểu trả về tên phương thức  được ủy quyền và các đối mục cần thiết: public delegate int WhichIsFirst(object obj1, object obj2); 57 Khai báo trên định nghĩa một  ủy quyền tên là WhichIsFirst, nó sẽ  đóng gói bất cứ  phương thức nào lấy hai tham số kiểu object và trả về giá trị int 13.3. Thực thi Trong chương trình thử nghiệm này chúng ta sẽ tạo ra hai đối tượng Student và   hai đối tượng Cat và lưu chúng vào mỗi một đối tượng Pair. Sau đó chúng ta sẽ  tạo  những đối tượng ủy quyền để đóng gói những phương thức của chúng, những phương   thức này phải phù hợp với ký pháp và kiểu trả về của ủy quyền. Sau cùng chúng ta sẽ  yêu cầu những đối tượng Pair này sắp xếp những đối tượng Student và Cat, ta làm  từng bước như sau: Bắt đầu bằng việc tạo phương thức khởi dựng Pair lấy hai đối tượng và đưa chúng  vào trong từng mảng riêng: public class Pair { // đưa vào 2 đối tượng theo thứ tự public Pair( object firstObjectr, object secondObject) { thePair[0] = firstObject; thePair[1] = secondObject; } // biến lưu giữ hai đối tượng private object[] thePair = new object[2]; } Tiếp theo là chúng ta phủ quyết phương thức ToString() để chứa giá trị mới của hai  đối 58 tượng mà Pair nắm giữ: public override string ToString() { // xuất thứ tự đối tượng thứ nhất trước đối tượng thứ hai return thePair[0].ToString() +”,” + thePair[1].ToString(); } CÂU HỎI, BÀI TẬP Xây dựng lớp SV có hàm tính trung bình điểm của 3 mơn U CẦU, ĐÁNH GIÁ ­ Khai báo ­ Thực thi 59 BÀI 14 SỰ KIỆN (EVENT) Giới thiệu Các hành động của người dùng, ví dụ như nhấn phím, click, di chuyển chuột, …   Các Application cần phản hồi các sự kiện này khi chúng xuất hiện Mục tiêu  ­ Trình bày được ý nghĩa và khai báo của sự kiện (event) ­ Vận dụng thực thi sự kiện (event) cho lớp ­ Rèn luyện tính cẩn thận, sáng tạo, tinh thần làm việc nhóm 14.1. Định nghĩa   Trong mơi trường giao diện đồ  họa (Graphical User Interfaces: GUIs), Windows hay   trong trình duyệt web địi hỏi các chương trình phải đáp ứng các sự kiện. Một sự kiện   có thể  là một nút lệnh được nhấn, một mục trong menu được chọn, hành động sao  chép tập tin hồn thành, Hay nói ngắn gọn là một hành động nào đó xảy ra, và ta phải  đáp ứng lại sự kiện đó Chúng ta khơng thể đốn trước được khi nào thì các sự kiện sẽ xuất hiện. Hệ thống sẽ  chờ  cho đến khi nhận được sự  kiện, và sẽ  chuyển vào cho trình xử  lý sự  kiện thực   Trong mơi trường giao diện đồ họa, bất cứ thành phần nào cũng có thể đưa ra sự kiện   Ví dụ, khi chúng ta kích vào một nút lệnh, nó có thể đưa ra sự kiện Click. Khi chúng ta  thêm một mục vào danh sách, nó sẽ đưa ra sự kiện ListChanged 14.2. Khai báo Giả sử chúng ta muốn tạo một lớp Clock dùng những sự kiện để cảnh báo những lớp   subscriber bất cứ khi nào đồng hồ hệ thống thay đổi giá trị trong một giây. Gọi sự kiện  60 này là OnSecondChange. Chúng ta khai báo sự kiện và kiểu delegate xử lý sự kiện của   nó như sau: [attributes] [modifiers] event type member­ name 14.3. Thực thi Một sự  kiện được phát ra thì sẽ  gọi bất cứ  phương thức nào được đăng ký với lớp   Clock thơng qua delegate, chúng ta sẽ kiểm tra điều này sau Một khi mà sự kiện được phát ra, chúng ta sẽ cập nhật lại trạng thái của lớp Class: this.second = dt.Second; this.minute = dt.Minute; this.hour = dt.Hour; 61 CÁC BÀI TẬP MỞ RỘNG, NÂNG CAO VÀ GIẢI QUYẾT VẤN ĐỀ Bài 1. Viết lớp giải phương trình bậc hai.  Lớp này có các thuộc tính a, b, c và nghiệm x1, x2. Hãy xây dựng theo hướng đối   tượng lớp trên. Lớp cho phép bên ngồi xem được các nghiệm của phương trình và cho   phép thiết lập hay xem các giá trị a, b, c Bài 2. Viết một chương trình để cài đặt một hệ thống quản lý kho.  Hãy lưu trữ mã số, tên hàng, giá và số lượng đang có của mỗi món hàng trong một lớp.  Nhập chi tiết của N (N nhập từ  bàn phím) món hàng hiển thị  tên từng món hàng và  tổng giá trị của nó Bài 3. Viết một chương trình để lưu trữ các sinh viên gồm: mã sinh viên, họ  và tên và  điểm trung bình của N (N nhập từ bàn phím) sinh viên.  Hãy sắp xếp danh sách sinh viên này theo thứ tự điểm trung bình giảm dần. Hiển thị 3   sinh viên có điểm trung bình cao nhất Bài 4. Tạo một lớp CD gồm: CDName, CDType và CDPrice và các phương thức cần  thiết khác.  Viết một ứng dụng có dạng menu như sau: Thêm CD: Cho phép thêm một đĩa CD vào danh mục các đĩa CD hiện có. Hãy cung cấp   khả  năng quản lý khoảng 1000 đĩa CD. Cần có sự  kiểm sốt nếu số  lượng đĩa CD  được nhập vượt q 1000 Search CD: Nhập vào tên của đĩa CD, nếu khơng tìm thấy thì báo lỗi, nếu tìm thấy thì   in các thơng tin liên quan đến đĩa CD đó Display catalog: Hiển thị tất cả các đĩa CD hiện có trong danh mục, danh mục đĩa CD   được hiển thị ở dạng bảng, có chứa cột tiêu đề Bài 5.  62 1. Xây dựng các lớp đối tượng hình học như: điểm, đoạn thẳng, đường trịn, hình chữ  nhật, hình vng, tam giác, hình bình hành, hình thoi. Mỗi lớp có các thuộc tính riêng  để  xác định được hình vẽ  biểu diễn của nó như  đoạn thẳng thì có điểm đầu, điểm  cuối 2. Mỗi lớp thực thi một phương thức Draw() ghi đè (overriding) phương thức Draw()  của lớp cơ sở gốc của các hình mà nó dẫn xuất. Hãy xây dựng lớp cơ sở của các lớp   trên và thực thi đa hình với phương thức Draw(), sau đó tạo lớp Tester cùng với hàm   Main() để thử nghiệm Bài 6: Cho thiết kế lớp Employee (nhân viên) như sau:  Các thành phần dữ liệu:  ­ id: Định danh, kiểu int. Định danh này được sinh tự động và tăng dần bắt đầu từ 1.  ­ name: Họ tên nhân viên, kiểu String.  ­ yearOfBirth: Năm sinh nhân viên, kiểu int.  ­ salaryLevel: Bậc lương, kiểu double.  ­ basicSalary: Lương cơ bản, kiểu double. (Chú ý lương cơ bản là thuộc tính được sử  dụng chung cho mọi đối tượng của lớp Employee).  Các phương thức:  ­ GetId( ): trả lại định danh của nhân viên.  ­ GetName( ): trả lại tên của nhân viên.  ­ GetYearOfBirth( ): trả lại năm sinh của nhân viên.  ­ GetIncome( ): trả  lại thu nhập của nhân viên. Thu nhập được tính bằng bậc lương   nhân lương cơ bản  (salaryLevel * basicSalary) ­ Input(): nhập thơng tin nhân viên.  ­ Display( ): hiển thị thơng tin về nhân viên. Bao gồm các thơng tin: định danh, tên, năm  sinh, lương cơ bản, thu nhập.  63 ­ SetSalaryLevel( ): thiết lập bậc lương cho nhân viên ­ SetBasicSalary( ): thiết lập lương cơ bản Hãy viết chương trình cài đặt lớp Employee và lớp sử dụng Employee Bài 7: Xây dựng chương trình quản lý lương cho cơng ty ABC. Thơng tin để tính lương  cho mỗi Nhân viên trong cơng ty bao gồm: Họ  tên, q qn, hệ  số  lương, lương cơ  bản. Hãy nhập vào một danh sách các Nhân viên của cơng ty sau đó thực hiện các u   cầu sau:  ­ Tính và hiển thị lương của các Nhân viên có trong danh sách ­ Liệt kê những nhân viên có hệ số lương cao nhất  ­ Sắp xếp danh sách theo thứ tự tăng dần của trường hệ số lương  Hướng dẫn:  ­ Xây dựng lớp có tên NhanVien với các thành phần  • Dữ liệu: Họ tên, q qn, hệ số lương, lương cơ bản(là thành phần dữ liệu tĩnh)  • Phương thức: Các thuộc tính để truy xuất tới các thành phần dữ liệu họ tên, hệ số  lương, phương thức nhập, hiển thị, tính lương,…  ­ Xây dựng lớp QuanLy nhân viên bao gồm  • Dữ liệu: ds là một mảng các nhân viên  Phương thức: Phương thức nhập, hiển thị, sắp xếp,… Bài 8: Xây dựng lớp có tên là TienDien với các thơng tin bao gồm:  + Dữ liệu:   ­ Họ tên chủ hộ  ­ Địa chỉ  ­ Số cơng tơ tháng trước  ­ Số cơng tơ tháng này  64 + Phương thức  ­ Phương thức thiết lập khơng tham số và 4 tham số  ­ Phương thức nhập dữ liệu  ­ Phương thức hiển thị dữ liệu  ­ Thuộc tính tính số  cơng tơ  điện đã dùng(=Số  cơng tơ  tháng này­ Số  cơng tơ  tháng   trước)  ­ Phương thức tính tiền điện được tính theo cơng thức: Số điện đã dùng*1240  Sau đó xây dựng lớp TienDienMoi bằng việc kế thừa lớp TienDien để  tính tiền điện   theo một quy định mới. Việc tính tiền điện lúc này căn cứ vào định mức quy định. Nếu   trong định mức là 1240, ngồi định mức là 1600  Hướng dẫn:  ­ Xây dựng lớp TienDien theo như đã mơ tả 65 TÀI LIỆU THAM KHẢO 1. Đồn Văn Ban ­ Phân tích , thiết kế và lập trình hướng đối tượng ­ Nhà xuất bản   thống kê, Hà Nội 1997 2. Phạm Văn Ất ­ C++ và lập trình hướng đối tượng ­ Nhà xuất bản Khoa học và Kỹ  thuật, Hà Nội 2000 3. Giáo trình lập trình hướng đối tượng C# 66 ... ­? ?Trình? ?bày được các phương pháp của? ?lập? ?trình? ?hướng? ?đối? ?tượng,  các đặt điểm nỗi   bật của phương pháp? ?lập? ?trình? ?hướng? ?đối? ?tượng ­? ?Trình? ?bày được các khái niệm cơ bản của? ?lập? ?trình? ?hướng? ?đối? ?tượng. .. vậy việc nghiên cứu phương pháp? ?lập? ?trình? ?mới này là thật sự cần thiết? ?đối? ?với những   người làm Tin học Mục tiêu mơn học + Trình? ?bày các khái niệm trong? ?lập? ?trình? ?hướng? ?đối? ?tượng? ? + Sử dụng ngơn ngữ C# trong? ?lập? ?trình? ?hướng? ?đối? ?tượng? ? + Thiết kế lớp? ?đối? ?tượng? ?và các thành phần của lớp ... MƠ ĐUN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Mã mơ đun: MĐ 16 Vị trí,? ?tính? ?chất của mơn học Lập? ?trình? ?hướng? ?đối? ?tượng? ?là phương pháp? ?lập? ?trình? ?mới trên bước đường tiến   hóa của việc? ?lập? ?trình? ?máy? ?tính,  nhằm giúp chương? ?trình? ?trở

Ngày đăng: 01/11/2020, 23:32

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w