C++ OOP từ cơ bản đến nâng cao (Phần 1)

Tuan Binh
blog.tuanbinh
Published in
3 min readAug 28, 2017

Lập trình Hướng đối tượng là một trong những phương pháp lập trình mà mọi lập trình viên đều phải biết và sử dụng thành thạo.

Đến với chuỗi bài viết này của mình, mình sẽ nói về tất cả các khái niệm từ cơ bản đến nâng cao về lập trình hướng đối tượng với C++.
Trong phần 1 này chúng ta sẽ cùng tìm hiểu về các khái niệm chính của phương pháp lập trình hướng đối tượng và các hàm khởi tạo.

Chúng ta bắt đầu thôi nào.
Đầu tiên chúng ta cần tìm hiểu xem Đối tượng là gì?

1: Đối tượng là gì?

  • Đối tượng nó có thể là một chiếc điện thoại, chiếc máy tính, bình nước…những thứ ta có thể cảm nhận được.
    - Hoặc có thể là những thứ ta không cảm nhận được như nhân vật ảo trong game, tài khoản email…
    Điểm chung của Đối tượng là có 2 thành phần chính, đó là:
    - Thuộc tính (attributes)
    - Hành động (methods)
    Ta ví dụ về đối tượng con mèo, con mèo thì có các thuộc tính như mắt đen, mũi đen, lông đen. Còn hành động của một con mèo thì là kêu, ăn, chạy…

2: Những tính chất của Đối tượng?

Đối tượng có 4 tính chất đặc trưng là:
Abstraction — Trừu tượng: Tập trung vào cốt lõi của đối tượng, bỏ qua những thứ không liên quan và không quan trọng.
Encapsulation — Đóng gói: Tính chất không cho phép người dùng hay đối tượng khác thay đổi dữ liệu thành viên của đối tượng nội tại. Chỉ có các hàm thành viên của đối tượng đó mới có quyền thay đổi trạng thái nội tại của nó mà thôi.
Inheritance — Kế thừa: Kế thừa, tái sử dụng phương thức, thuộc tính của lớp cơ sở. Và lớp kế thừa được gọi là lớp con, nó sẽ thừa hưởng những gì lớp cha có và cho phép.
Polymorphism — Đa hình: Tính đa hình cho phép các chức năng (method) khác nhau được thực thi khác nhau trên các đối tượng khác nhau.

3: Khai báo class trong C++?

4: Định nghĩa phương thức của class?

5: Con trỏ this là gì?

Con trỏ this tham chiếu đến đối tượng đang gọi hàm thành phần.
Các bạn hãy theo dõi ví dụ sau để dễ hiểu hơn.

6: Phương thức có tham số truyền vào?

7: Hàm khởi tạo — Constructor?

  • Là hàm đặc biệt để khởi tạo đối tượng
  • Constructor cùng tên với class
  • Constructor được gọi khi khởi tạo đối tượng

Có 3 loại ConstructorConstructor

  • Constructor mặc định
  • Constructor có tham số
  • Constructor sao chép

Chúng ta cùng tìm hiểu xem mỗi loại có những tính chất khác nhau như thế nào nhé.

Constructor mặc định:

  • Không có kiểu trả về
  • Cùng tên với class
  • Phải trong tầm vực public

Bài này tạm thời chúng ta sẽ dừng tại đây, hẹn gặp các bạn trong bài viết tiếp theo của mình, các bạn theo dõi phần 2 của series này tại đây nhé:)

--

--