Bài giảng Lập trình hướng đối tượng: Chương 4 - Nguyễn Minh Thành
Số trang: 19
Loại file: pdf
Dung lượng: 281.37 KB
Lượt xem: 7
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:
Mục tiêu của chương 4 Sự đóng gói thuộc bài giảng lập trình hướng đối tượng nhằm trình bày về các nội dung chính: khái niệm về tính đóng gói, phạm vi truy xuất trên lớp, thiết kế thuộc tính cho lớp...lập trình hướng đối tượng là phương pháp lập trình dựa trên kiến trúc lớp (class) và đối tượng (object).
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 4 - Nguyễn Minh Thành 1Sự Đóng GóiMôn Lập Trình Hướng Đối Tượng – Chương 4Nguyễn Minh Thành[Mail] : Thanhnm@itc.edu.vn 2Nhắc Lại Lập trình hướng đối tượng là phương pháp lập trình dựa trên kiến trúc lớp (class) và đối tượng (object). Chương trình là một hệ thống các đối tượng. Xây dựng một chương trình là định nghĩa các lớp đối tượng, sau đó khai báo các đối tượng và tổ chức để các đối tượng thực thi nhiệm vụ của mình. 3Nội Dung1. Khái niệm về Tính Đóng Gói2. Phạm vi truy xuất trên Lớp3. Thiết kế thuộc tính cho Lớp 41. Khái niệm Sự đóng gói là cơ chế ràng buộc dữ liệu và thao tác trên dữ liệu để thành một thể thống nhất, tránh được các tác động bất ngờ từ bên ngoài. Thể thống nhất này gọi là đối tượng. 5Khái niệm (tt) class { thuộc tính; phương thức(); } • Chỉ có các phương thức nằm trong class mới được quyền truy cập thuộc tính (hay dữ liệu). • Thuộc tính (hay dữ liệu) mà phương thức truy cập sẽ tương ứng với đối tượng được tạo từ class đó. 6Ví dụ : lập trình thủ tục• Nhập vào 2 sinh viên với các thông tin như sau : họ tên, năm sinh, giới tính và xuất ra màn hình.• Giải quyết : ▫ Tạo 6 biến cho 2 sinh viên ▫ Viết 2 hàm nhập và xuất với tham số truyền vào là thông tin về sinh viên cần xuất 7Ví dụ : lập trình thủ tục (tt)void NhapSinhVien(out string ht,out int ns,out string gt){ Console.Write(Nhap ho ten :); ht = Console.ReadLine(); Console.Write(Nhap nam sinh :); ns = int.Parse(Console.ReadLine()); Console.Write(Nhap gioi tinh :); gt = Console.ReadLine();}void XuatSinhVien(string ht, int ns, string gt){ Console.WriteLine(Sinh vien : {0}, sinh nam {1},phai {2},ht,ns,gt);} 8Ví dụ : lập trình thủ tục (tt)void main(){ string hoten1, hoten2; int namsinh1, namsinh2; string gioitinh1, gioitinh2; NhapSinhVien(out hoten1,out namsinh1, out gioitinh1); NhapSinhVien(out hoten2,out namsinh2, out gioitinh2); XuatSinhVien(hoten1,namsinh1,gioitinh1); XuatSinhVien(hoten2,namsinh2,gioitinh2);} 9Ví dụ : lập trình hướng đối tượng• Giải quyết : ▫ Định nghĩa một class SinhVien chứa các thông tin và hành động nhập xuất tương ứng. ▫ Tạo 2 đối tượng sinh viên từ class SinhVien và gọi hành động nhập của đối tượng cụ thể. 10Ví dụ : lập trình hướng đối tượngclass HOCSINH{ private string hoten, gioitinh; private int namsinh; public void Nhap() { Console.Write(Nhap ho ten :); hoten = Console.ReadLine(); Console.Write(Nhap nam sinh :); namssinh = int.Parse(Console.ReadLine()); Console.Write(Nhap gioi tinh :); gioitinh = Console.ReadLine(); } public void Xuat() { Console.WriteLine(Sinh vien : {0}, sinh nam {1}, phai{2},hoten,namsinh,gioitinh); }} 11 Ví dụ : lập trình hướng đối tượngvoid main(){ SinhVien sv1 = new SinhVien(); SinhVien sv2 = new SinhVien(); sv1.Nhap(); sv2.Nhap(); sv1.Xuat(); sv2.Xuat();} Nhận xét sv1 và sv2 là 2 đối tượng thuộc class SinhVien, nên sv1, sv2 sẽ có các dữ liệu : hoten, namsinh, gioitinh và 2 phương thức nhập, xuất riêng. Khi ta gọi s1.Nhap(), phương thức Nhap của sv1 được gọi và sẽ thao tác lên chính dữ liệu của sv1, không ảnh hưởng đến sv2 Đó là tính đóng gói 122. Phạm vi truy xuất• Các từ khoá truy xuất : ▫ private (mặc định): Chỉ được truy xuất trong nội bộ lớp (thuộc tính thường sử dụng). ▫ protected: Truy xuất trong nội bộ lớp hoặc trong các lớp con, được sử dụng cho lớp cơ sở (lớp cha) ▫ public: Truy xuất mọi nơi (phương thức thường sử dụng). ▫ static : truy xuất không cần khởi tạo đối tượng của lớp. 13Phạm vi truy xuất (tt)• Ví dụ :………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………… 143. Thiết kế thuộc tínhChọn kiểu thích hợp biểu diễn của thuộc tính của lớp.Lập bảng như sau: STT Thuộc tính Kiểu/ lớp Ràng buộc Ghi chúVí dụ 1: Xét lớp điểm ký tự trên cửa sổ Console STT Thuộc Kiểu/ lớp Ràng buộc Ghi chú tính 1 x Số nguyên 0 ≤ x < Kích thước Hoành độ ngang 2 y Số nguyên 0 ≤ y < Kích thước dọc Tung độ 3 c Ký tự Ký tự 15Thiết kế thuộc tính Ví dụ 2: Xét lớp hình chữ nhật trên cửa sổ Console • Cách 1: STT Thuộc tính K ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Chương 4 - Nguyễn Minh Thành 1Sự Đóng GóiMôn Lập Trình Hướng Đối Tượng – Chương 4Nguyễn Minh Thành[Mail] : Thanhnm@itc.edu.vn 2Nhắc Lại Lập trình hướng đối tượng là phương pháp lập trình dựa trên kiến trúc lớp (class) và đối tượng (object). Chương trình là một hệ thống các đối tượng. Xây dựng một chương trình là định nghĩa các lớp đối tượng, sau đó khai báo các đối tượng và tổ chức để các đối tượng thực thi nhiệm vụ của mình. 3Nội Dung1. Khái niệm về Tính Đóng Gói2. Phạm vi truy xuất trên Lớp3. Thiết kế thuộc tính cho Lớp 41. Khái niệm Sự đóng gói là cơ chế ràng buộc dữ liệu và thao tác trên dữ liệu để thành một thể thống nhất, tránh được các tác động bất ngờ từ bên ngoài. Thể thống nhất này gọi là đối tượng. 5Khái niệm (tt) class { thuộc tính; phương thức(); } • Chỉ có các phương thức nằm trong class mới được quyền truy cập thuộc tính (hay dữ liệu). • Thuộc tính (hay dữ liệu) mà phương thức truy cập sẽ tương ứng với đối tượng được tạo từ class đó. 6Ví dụ : lập trình thủ tục• Nhập vào 2 sinh viên với các thông tin như sau : họ tên, năm sinh, giới tính và xuất ra màn hình.• Giải quyết : ▫ Tạo 6 biến cho 2 sinh viên ▫ Viết 2 hàm nhập và xuất với tham số truyền vào là thông tin về sinh viên cần xuất 7Ví dụ : lập trình thủ tục (tt)void NhapSinhVien(out string ht,out int ns,out string gt){ Console.Write(Nhap ho ten :); ht = Console.ReadLine(); Console.Write(Nhap nam sinh :); ns = int.Parse(Console.ReadLine()); Console.Write(Nhap gioi tinh :); gt = Console.ReadLine();}void XuatSinhVien(string ht, int ns, string gt){ Console.WriteLine(Sinh vien : {0}, sinh nam {1},phai {2},ht,ns,gt);} 8Ví dụ : lập trình thủ tục (tt)void main(){ string hoten1, hoten2; int namsinh1, namsinh2; string gioitinh1, gioitinh2; NhapSinhVien(out hoten1,out namsinh1, out gioitinh1); NhapSinhVien(out hoten2,out namsinh2, out gioitinh2); XuatSinhVien(hoten1,namsinh1,gioitinh1); XuatSinhVien(hoten2,namsinh2,gioitinh2);} 9Ví dụ : lập trình hướng đối tượng• Giải quyết : ▫ Định nghĩa một class SinhVien chứa các thông tin và hành động nhập xuất tương ứng. ▫ Tạo 2 đối tượng sinh viên từ class SinhVien và gọi hành động nhập của đối tượng cụ thể. 10Ví dụ : lập trình hướng đối tượngclass HOCSINH{ private string hoten, gioitinh; private int namsinh; public void Nhap() { Console.Write(Nhap ho ten :); hoten = Console.ReadLine(); Console.Write(Nhap nam sinh :); namssinh = int.Parse(Console.ReadLine()); Console.Write(Nhap gioi tinh :); gioitinh = Console.ReadLine(); } public void Xuat() { Console.WriteLine(Sinh vien : {0}, sinh nam {1}, phai{2},hoten,namsinh,gioitinh); }} 11 Ví dụ : lập trình hướng đối tượngvoid main(){ SinhVien sv1 = new SinhVien(); SinhVien sv2 = new SinhVien(); sv1.Nhap(); sv2.Nhap(); sv1.Xuat(); sv2.Xuat();} Nhận xét sv1 và sv2 là 2 đối tượng thuộc class SinhVien, nên sv1, sv2 sẽ có các dữ liệu : hoten, namsinh, gioitinh và 2 phương thức nhập, xuất riêng. Khi ta gọi s1.Nhap(), phương thức Nhap của sv1 được gọi và sẽ thao tác lên chính dữ liệu của sv1, không ảnh hưởng đến sv2 Đó là tính đóng gói 122. Phạm vi truy xuất• Các từ khoá truy xuất : ▫ private (mặc định): Chỉ được truy xuất trong nội bộ lớp (thuộc tính thường sử dụng). ▫ protected: Truy xuất trong nội bộ lớp hoặc trong các lớp con, được sử dụng cho lớp cơ sở (lớp cha) ▫ public: Truy xuất mọi nơi (phương thức thường sử dụng). ▫ static : truy xuất không cần khởi tạo đối tượng của lớp. 13Phạm vi truy xuất (tt)• Ví dụ :………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………… 143. Thiết kế thuộc tínhChọn kiểu thích hợp biểu diễn của thuộc tính của lớp.Lập bảng như sau: STT Thuộc tính Kiểu/ lớp Ràng buộc Ghi chúVí dụ 1: Xét lớp điểm ký tự trên cửa sổ Console STT Thuộc Kiểu/ lớp Ràng buộc Ghi chú tính 1 x Số nguyên 0 ≤ x < Kích thước Hoành độ ngang 2 y Số nguyên 0 ≤ y < Kích thước dọc Tung độ 3 c Ký tự Ký tự 15Thiết kế thuộc tính Ví dụ 2: Xét lớp hình chữ nhật trên cửa sổ Console • Cách 1: STT Thuộc tính K ...
Tìm kiếm theo từ khóa liên quan:
Truy xuất lớp Thiết kế lớp Tính đóng gói Lập trình hướng đối tượng Ngôn ngữ C Ngôn ngữ lập trìnhGợi ý tài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 256 0 0 -
Kỹ thuật lập trình trên Visual Basic 2005
148 trang 246 0 0 -
Bài thuyết trình Ngôn ngữ lập trình: Hệ điều hành Window Mobile
30 trang 246 0 0 -
Giáo trình Lập trình cơ bản với C++: Phần 1
77 trang 229 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 208 0 0 -
Giáo án Tin học lớp 11 (Trọn bộ cả năm)
125 trang 199 1 0 -
101 trang 198 1 0
-
NGÂN HÀNG CÂU HỎI TRẮC NGHIỆM THIẾT KẾ WEB
8 trang 187 0 0 -
Bài tập lập trình Windows dùng C# - Bài thực hành
13 trang 160 0 0 -
Giáo trình Lập trình C căn bản: Phần 1
64 trang 159 0 0