Bài giảng Lập trình hướng đối tượng - Lớp và đối tượng
lượt xem 0
download
Bài giảng Lập trình hướng đối tượng - Lớp và đối tượng với các nội dung: cú pháp khai báo lớp, định nghĩa hàm thành phần của lớp, khai báo và tạo lập đối tượng, phạm vi truy xuất, phương thức thiết lập – Constructor, phương thức hủy bỏ – Destructor, phương thức truy vấn, cvập nhật, thành viên tĩnh – static member.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình hướng đối tượng - Lớp và đối tượng
- LỚP VÀ ĐỐI TƯỢNG Khoa Công nghệ phần mềm CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Nội dung Cú pháp khai báo lớp Định nghĩa hàm thành phần của lớp Khai báo và tạo lập đối tượng Phạm vi truy xuất Phương thức thiết lập – Constructor Phương thức hủy bỏ – Destructor Phương thức Truy vấn, Cập nhật Thành viên tĩnh – static member 29/02/2016 Lập trình hướng đối tượng 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Lớp trong C++ Một lớp bao gồm các thành phần dữ liệu (thuộc tính) và các phương thức (hàm thành phần). Lớp trong C++ thực chất là một kiểu dữ liệu do người sử dụng định nghĩa. Trong C++, dùng từ khóa class để chỉ điểm bắt đầu của một lớp sẽ được cài đặt. 29/02/2016 Lập trình hướng đối tượng 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Lớp đối tượng Lớp là một mô tả trừu tượng của nhóm các đối tượng cùng bản chất, ngược lại mỗi một đối tượng là một thể hiện cụ thể cho những mô tả trừu tượng đó. 29/02/2016 Lập trình hướng đối tượng 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Cú pháp khai báo lớp class { //Thành phần dữ liệu //Thành phần xử lý }; 29/02/2016 Lập trình hướng đối tượng 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Cú pháp khai báo lớp class { private: protected: public: }; 29/02/2016 Lập trình hướng đối tượng 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Cú pháp khai báo lớp Header class Rectangle class class_name { { private: Access_Control_label: int width; int length; members; public: (data & code) void set(int w, int l); Access_Control_label : int area(); members; }; (data & code) }; 29/02/2016 Lập trình hướng đối tượng 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Các thành phần của lớp Thuộc tính: Các thuộc tính được khai báo giống như khai báo biến trong C Phương thức: Các phương thức được khai báo giống như khai báo hàm trong C. Có hai cách định nghĩa thi hành của một phương thức Định nghĩa thi hành trong lớp Định nghĩa thi hành ngoài lớp 29/02/2016 Lập trình hướng đối tượng 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Cơ chế tạo lập các lớp Xác định các thuộc tính (dữ liệu) Những gì mà ta biết về đối tượng – giống như một struct Xác định các phương thức (hành vi) Những gì mà đối tượng có thể làm Xác định các quyền truy xuất 29/02/2016 Lập trình hướng đối tượng 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Định nghĩa hàm thành phần Cú pháp định nghĩa các hàm thành phần ở bên ngoài khai báo lớp: :: () { } Ví dụ: void point::display() { //…….. } 29/02/2016 Lập trình hướng đối tượng 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Định nghĩa hàm thành phần class Rectangle{ private: int width, length; public: class name void set (int w, int l); member function name int area() { return width*length; } }; void Rectangle :: set (int w, int l) { inline width = w; length = l; scope operator } 29/02/2016 Lập trình hướng đối tượng 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ lớp Time class Time { public: void Set (int hours , int minutes , int seconds); void Increment ( ); void Write ( ) const; Time (int initHrs, int initMins, int initSecs ); //constructor Time ( ); //default constructor private: int hrs; int mins; int secs; } ; 29/02/2016 Lập trình hướng đối tượng 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ lớp Time Time class Set Private data: Increment hrs Write mins Time secs Time 29/02/2016 Lập trình hướng đối tượng 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Khai báo và tạo lập đối tượng Khai báo và tạo đối tượng: ; Gọi hàm thành phần của lớp . (); (); 29/02/2016 Lập trình hướng đối tượng 14 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Khai báo và tạo lập đối tượng class Rectangle r1 is statically allocated { void main() private: { Rectangle r1; int width; r1.set(5, 8); int length; } public: void set(int w, int l); r1 width = 5 int area(); length = 8 }; 29/02/2016 Lập trình hướng đối tượng 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Khai báo và tạo lập đối tượng r2 is a pointer to a Rectangle object class Rectangle { main() { private: Rectangle r1; int width; r1.set(5, 8); //dot notation int length; Rectangle *r2; r2 = &r1; public: r2->set(8,10); //arrow notation } void set(int w, int l); int area(); 5000 r2 r1 width = 8 5 6000 }; length = 10 8 5000 ??? 29/02/2016 Lập trình hướng đối tượng 16 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Khai báo và tạo lập đối tượng r3 is dynamically allocated class Rectangle main() { { private: Rectangle *r3; r3 = new Rectangle(); int width; r3->set(80,100); //arrow notation int length; delete r3; public: r3 = NULL; void set(int w, int l); } int area(); r3 6000 }; NULL ??? 29/02/2016 Lập trình hướng đối tượng 17 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ Xây dựng lớp Điểm (Point) trong hình học 2D Thuộc tính • Tung độ • Hoành độ Thao tác (phương thức) • Khởi tạo • Di chuyển • In ra màn hình •… 29/02/2016 Lập trình hướng đối tượng 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ /*point.cpp*/ #include using namespace std; class point { /*khai báo các thành phần dữ liệu riêng*/ private: int x,y; /*khai báo các hàm thành phần công cộng*/ public: void init(int ox, int oy); void move(int dx, int dy); void display(); }; 29/02/2016 Lập trình hướng đối tượng 19 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ void point::init(int ox, int oy) { cout
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình hướng đối tượng: Chương 1 - TS. Trần Công Án
57 p | 89 | 13
-
Bài giảng Lập trình hướng đối tượng: Chương 2 - Nguyễn Sơn Hoàng Quốc, ThS. Nguyễn Tấn Trần Minh Khang
14 p | 174 | 12
-
Bài giảng Lập trình hướng đối tượng - Chương 1: Phương pháp lập trình hướng đối tượng
9 p | 140 | 9
-
Bài giảng Lập trình hướng đối tượng C++ - Chương 2: Lập trình hướng đối tượng
53 p | 46 | 8
-
Bài giảng Lập trình hướng đối tượng (dùng Java): Chương 1 - Trần Minh Thái (2017)
55 p | 80 | 8
-
Bài giảng Lập trình hướng đối tượng - Bài 1: Tổng quan lập trình hướng đối tượng
53 p | 119 | 8
-
Bài giảng Lập trình hướng đối tượng (Dùng C#): Chương 2 - Trần Minh Thái
35 p | 103 | 8
-
Bài giảng Lập trình hướng đối tượng: Chương 1 - Trần Thị Anh Thi
7 p | 197 | 7
-
Bài giảng Lập trình hướng đối tượng: Bài 1 - ThS. Trịnh Thành Trung
53 p | 86 | 7
-
Bài giảng Lập trình hướng đối tượng: Chương 1 - Trần Minh Thái
40 p | 116 | 6
-
Bài giảng Lập trình hướng đối tượng 1: Chương 1 - ThS. Thái Kim Phụng
39 p | 100 | 6
-
Bài giảng Lập trình hướng đối tượng – Bài 01: Tổng quan về OOP
47 p | 63 | 5
-
Bài giảng Lập trình hướng đối tượng (dùng JAVA): Chương 1 - Trần Minh Thái
40 p | 99 | 5
-
Bài giảng Lập trình hướng đối tượng và C++: Chương 1
15 p | 103 | 4
-
Bài giảng Lập trình hướng đối tượng: Nhập môn - Trần Phước Tuấn
15 p | 139 | 4
-
Bài giảng Lập trình hướng đối tượng: Bài 1 - Tổng quan về lập trình hướng đối tượng
47 p | 11 | 4
-
Bài giảng Lập trình hướng đối tượng: Chương 1 - Các khái niệm cơ bản trong lập trình hướng đối tượng
36 p | 15 | 3
-
Bài giảng Lập trình hướng đối tượng: Bài 1 - Nguyễn Khanh Văn
0 p | 83 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn