Nội dung
- Những câu hỏi phỏng vấn về OOP – Phần 2: 4 tính chất của OOP
- Câu 1: Tính trừu tượng là gì?
- Câu 2: Lớp trừu tượng (Abstract class) là gì?
- Câu 3: Phương thức trừu tượng (Abstract method) là gì?
- Câu 4: Phương thức trừu tượng phải đươc đặt ở đâu?
- Câu 5: Thuộc tính của interface có gì đặc biệt?
- Câu 6: Phương thức của interface có gì đặc biệt?
- Câu 7: Interface có thể là final không?
- Câu 8: Vậy abstract class có là final được không?
- Câu 9: Tính đóng gói là gi?
- Câu 10: Tính đóng gói được thể hiện thông qua đâu?
- Câu 11: Có những loại Access modifier nào và nêu phạm vi sử dụng của chúng?
- Câu 12: Tính kế thừa là gì?
- Câu 13: Cha của tất cả các lớp là lớp nào?
- Câu 14: Muốn tham chiếu trực tiếp đến đối tượng của lớp cha, ta dùng từ khóa nào?
- Câu 15: Sự khác nhau giữa this() và super() là gì?
- Câu 16: Đa hình là gì?
- Câu 17: Làm như nào để có thể có tính đa hình?
Những câu hỏi phỏng vấn về OOP – Phần 2: 4 tính chất của OOP
Các bạn đã học được hết những câu hỏi trong những bài trước chưa. Chúng ta cùng tiếp tục đến với 4 tính chất của OOP trong blog này. Đó chính là tính trừu tượng, đóng gói, kế thừa và đa hình.
Bài viết về phỏng vấn OOP phần 1 tại đây
Bắt đầu nhé!
Câu 1: Tính trừu tượng là gì?
Tính trừu tượng là ẩn các chi tiết triển khai và chỉ hiển thị các tính năng với người dùng. Tính chất này cho phép loại bỏ các tính chất phức tạp của đổi tượng, chỉ cần đưa ra các tính chất cần thiết trong lập trình giúp tập trung vào những cốt lõi của đối tượng.
Câu 2: Lớp trừu tượng (Abstract class) là gì?
Là lớp không có thể hiện cụ thể.
Câu 3: Phương thức trừu tượng (Abstract method) là gì?
Là phương thức không có trình triển khai
Câu 4: Phương thức trừu tượng phải đươc đặt ở đâu?
Ở trong lớp trừu tượng.
Câu 5: Thuộc tính của interface có gì đặc biệt?
Phải là hằng số
Câu 6: Phương thức của interface có gì đặc biệt?
- Không có thân
- Là public method
Câu 7: Interface có thể là final không?
Không. Vì muốn sử dụng được phương thức của interface, phải có một lớp triển khai nó và sử dụng thông qua lớp đó.
Câu 8: Vậy abstract class có là final được không?
Không. Vì cần phải có các lớp khác kế thừa để có thể có các thể hiện khác nhau của abstract class.
Câu 9: Tính đóng gói là gi?
Là quy định các trạng thái của đối tượng không cho phép code ở ngoài phạm vi có thể thay đổi trạng thái hoặc nhìn thấy.
Câu 10: Tính đóng gói được thể hiện thông qua đâu?
Access modifier
Câu 11: Có những loại Access modifier nào và nêu phạm vi sử dụng của chúng?
- Public: có thể truy cập ở bất cứ đâu
- Protected: có thể truy cập bởi các class trong cùng package hoặc các class con
- Default: có thể truy câp bởi các class trong cùng package
- Private: có thể truy cập trong cùng class
Câu 12: Tính kế thừa là gì?
Là khả năng xây dựng 1 class mới (con) dựa trên 1 class đã có (cha)
Câu 13: Cha của tất cả các lớp là lớp nào?
Object
Câu 14: Muốn tham chiếu trực tiếp đến đối tượng của lớp cha, ta dùng từ khóa nào?
Super
Câu 15: Sự khác nhau giữa this() và super() là gì?
This() để gọi đến constructor trong lớp hiện tại còn super() gọi đến constructor trong lớp cha
Câu 16: Đa hình là gì?
Là khi một hành động được thực hiện theo nhiều cách khác nhau.
Câu 17: Làm như nào để có thể có tính đa hình?
Sử dụng overloading hoặc overriding
Trên đây là những câu hỏi thường gặp về 4 tính chất của OOP. Cũng khá nhiều kiến thức rồi đó. Cùng cố gắng nhé. Tiếp theo sẽ là blog nói về “Xử lý ngoại lệ”. Đây là phần kiến thức khó nên cũng ít khi hỏi trong phỏng vấn. Nhưng nếu có bị hỏi chúng ta sẽ deal được mức lương kha khá đó. Vậy chúng ta đi qua phần tiếp theo nha.
Author: Nguyễn Minh Quân
Đăng ký nhận bộ tài liệu kỹ năng dành cho lập trình viên (video hướng dẫn + slide) tại đây
Tìm hiểu thêm về mô hình Coding Bootcamp tại đây
>> Xem ngay Devworld – Cẩm nang giúp lập trình viên phát triển bền vững với nghề lập trình
0 Lời bình