NỘI DUNG BÀI VIẾT
Java Core – các khái niệm về OPPs: Các câu hỏi phỏng vấn đa hình
1. Đa hình tại runtime là gì?
Đa hình tại runtime là quá trình gọi phương thức đã được ghi đè trong thời gian thực thi chương trình. Trong quá trình này, một phương thức được ghi đè được gọi thông qua biến tham chiếu của một lớp cha.
2. Có thể thực hiện đa hình lúc runtime với các thành viên dữ liệu không?
Không.
3. Sự khác nhau giữa ràng buộc tĩnh và ràng buộc động là gì?
Kiểu ràng buộc tĩnh của đối tượng được xác định tại lúc biên dịch, còn kiểu ràng buộc động của đối tượng được xác định tại runtime.
Java Core – các khái niệm về OPPs: Các câu hỏi phỏng vấn trừu tượng
Tham khảo khoá học lập trình web trong vòng 6 tháng, đảm bảo 100% công việc đầu ra!
1.Trừu tượng là gì?
Tính trừu tượng là một tiến trình ẩn các cài đặt chi tiết và chỉ hiển thị tính năng tới người dùng.
Sự trừu tượng khiến bạn tập trung vào đối tượng đó làm những gì thay vì đối tượng đó làm như thế nào.
2. Sự khác nhau giữa trừu tượng và đóng gói là gì?
Trừu tượng là ẩn đi cài đặt chi tiết còn đóng gói là gói code và data vào một khối duy nhất.
3. Lớp trừu tượng là gì?
Một lớp được khai báo với từ khóa abstract là lớp trừu tượng trong Java. Cần có một lớp khác kế thừa nó và cài đặt phương thức của nó. Nó không thể là thể hiện cụ thể.
4. Có phương thức trừu tượng không nằm trong lớp trừu tượng không?
Không, nếu có bất kỳ phương thức trừu tượng nào trong lớp, thì lớp đó phải là lớp trừu tượng.
5. Có thể sử dụng cả abstract và final cho một phương thức không?
Không, vì phuong thức trừu tượng (abstract) cần phải được ghi đè, trong khi đó không thể ghi đè được phương thức final.
6. Có thể tạo thể hiện của lớp trừu tượng không?
Không, lớp trừu tượng không có thể hiện.
7. Interface là gì?
Một Interface trong Java là một bản thiết kế của một lớp. Nó chỉ có các phương thức trừu tượng. Interface là một kỹ thuật để thu được tình trừu tượng hoàn toàn và đa kế thừa trong Java.
8. Có thể khai báo một phương thức của interface với từ khóa static không?
Không. Vì mặc định các phương thức của một interface là trừu tượng, từ khóa static và abtract không thể được sử dụng chung với nhau.
9. Một interface có thể là final không?
Không. Vì cài đặt phải được cung cấp bởi một lớp khác.
10. Marker interface là gì?
Một giao tiếp (interface) không có thành viên dữ liệu và phương thức được biết đến như là một giao tiếp marker.Ví dụ Serializable, Cloneable, …
11. Sự khác nhau giữa lớp abstract và interface là gì?
Lớp Abstract | Interface |
---|---|
1)Một lớp abstract có thể có phương thức có nội dung (các phương thức tường minh). | Interface chỉ có các phương thức trừu tượng. |
2)Một lớp abstract có thể có các biến instance. | Một interface không thể có các biến instance. |
3)Một lớp abstract có thể có constructor. | Một interface không thể có constructor. |
4)Một lớp abstract có thể có các phương thức static. | Một interface không thể có các phương thức static. |
5) Một lớp chỉ có thể extends một lớp abstract. | Một lớp thể implement nhiều interface. |
12. Có thẻ định nghĩa private hoặc protected cho các biến trong interface không?
Không. chúng phải là public.
13. Khi nào một tham chiếu đối tượng có thể được ép sang kiểu interface tham chiếu?
Một tham chiếu đối tượng có thể được ép sang kiểu interface tham chiếu khi đối tượng đó implements interface được tham chiếu.
Java Core – các khái niệm về OPPs: Các câu hỏi phỏng vấn package
1. Package là gì?
Một package (gói) trong java là một nhóm các kiểu tương tự của các lớp, giao diện và các package con .
2. Có cần import package import java.lang không? tại sao?
Không. Vì nó được tải gầm bởi JVM.
3. Có thể import package/lớp giống nhau hai lần không? JVM sẽ tải package hai lần khi chạy không?
Chúng ta có thể import package/lớp giống nhau nhiều lần, trình biên dịch và JVM sẽ không phàn nàn gì về vấn đề này. Nhưng JVM sẽ tải lớp đó một lần.
4. Static import là gì?
Với static import, chúng ta có thể truy cập đến các thành viên của một lớp một cách trực tiếp. Không cần phải sử dụng tên class cũng có thể truy cập.
Nguồn: https://viettuts.vn/interview/list-cau-hoi-phong-van-java-core