top of page

Tính chất của OOP

  • progtips4devs
  • Feb 24, 2017
  • 2 min read

Các ngôn ngữ lập trình hướng đối tượng, tùy vào thiết kế sẽ có nhiều tính chất khác nhau. Nhưng về cơ bản, ngôn ngữ lập trình hướng đối tượng nào cũng phải có tính chất cơ bản sau: Đóng gói, Kế thừa, Đa hình. Dưới đây là một số câu hỏi xung quanh 3 tính chất này của OOP.

Câu hỏi: Lập trình hướng đối tượng có bao nhiêu tính chất, kể tên (Tiếng Anh và tiếng Việt) các tính chất ấy.

Trả lời: Có 4 tính chất: Đóng gói (Encapsulation), Kế thừa (Inheritance), Đa hình (Polymorphism) và Trừu tượng (Abstraction)


Câu hỏi: Bạn hiểu như thế nào về tính đóng gói (Encapsulation)?

Trả lời: Dùng Private Modifier hoặc có thể là Protected để giấu kín dữ liệu của lớp và đối tượng, chỉ cho người sử dụng tương tác thông qua các hàm public dùng để get và set dữ liệu.


Câu hỏi: Tính kế thừa (Inheritance) dùng để làm gì?

Trả lời: Đặc tính này cho phép một đối tượng có thể có sẵn các đặc tính mà đối tượng khác đã có thông qua kế thừa. Điều này cho phép các đối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại.


Câu hỏi: Tính kế thừa có lợi ích gì?

Trả lời: – Lớp kế thừa có thể tận dụng các thuộc tính và phương thức của lớp cha – Lớp kế thừa có thể “đặc biệt hóa”, nghĩa là thêm thuộc tính, phương thức, chỉnh sửa lại phương thức của lớp cha.


Câu hỏi: Có các kiểu kế thừa nào?

Trả lời: Trong C++: kế thừa public, private, protected Trong C# và Java: chỉ có kế thừa public


Câu hỏi: Tính đa hình (Polymorphism) là gì?

Trả lời: Một đối tượng gọi cùng một phương thức được định nghĩa trong các lớp khác nhau. Tùy vào đối tượng đó đang giữ đối tượng của lớp nào mà phương thức của lớp đó được gọi. Với điều kiện là phương thức đó phải được khai báo đa hình.


Câu hỏi: Trong C++, phương thức đa hình được khai báo như thế nào?

Trả lời: Thêm từ khóa virtual vào trước khai báo hàm. Ví dụ: virtual void Function();


Câu hỏi: Tính đa hình có lợi ích gì?

Trả lời: Giúp nâng cao tính tái sử dụng của mã nguồn bằng cách viết những đoạn mã tổng quát thao tác trên các lớp đối tượng gốc đã định nghĩa các phương thức đa hình, nhưng lại có thể sử dụng được cho các đối tượng của những lớp con của nó.


Comments


RECENT POSTS

FOLLOW US

  • Grey Facebook Icon
  • Grey Twitter Icon
  • Grey Instagram Icon
  • Grey Google+ Icon
  • Grey Pinterest Icon

Master Interviewees

Trang web giúp các bạn ôn lại những kiến thức chuyên ngành IT thường được hỏi khi đi phỏng vấn, đồng thời chia sẻ các kinh nghiệm khi đi phỏng vấn ở các công ty phần mềm

SOCIALS 

SUBSCRIBE 

Đăng ký để không bỏ lỡ các bài viết mới mọi người nhé!!!

© 2023 by FEEDs & GRIDs. Proudly created with Wix.com

bottom of page