Top 5 câu hỏi phỏng vấn Java thường được dùng nhất

Share on facebook
Share on google
Share on twitter
Share on linkedin

những câu hỏi phỏng vấn java

Bạn sắp tham gia buổi phỏng cho vị trí lập trình viên? Bạn phân vân không biết nên chuẩn bị những câu hỏi phỏng vấn Java nào? Hãy cùng mình tìm hiểu một số câu hỏi Java hay nhất thường xuất hiện các buổi phỏng vấn nhé!

Câu hỏi phỏng vấn Java
Câu hỏi phỏng vấn Java

Một số câu hỏi phỏng vấn Java hay nhất

Để thành công vượt qua kỳ phỏng vấn, sự chuẩn bị kỹ lưỡng trước các câu trả lời là hết sức cần thiết. Đặc biệt là với một số ngành nghề đòi hỏi chuyên môn cao như lập trình viên. Dưới đây sẽ là 5 câu hỏi phỏng vấn Java phổ biến nhất hiện nay.

1. Từ khóa volatile là gì? Tại sao ta cần sử dụng chúng?

Thông thường, những câu hỏi liên quan đến Volatile sẽ dành cho những ứng viên muốn ứng tuyển vào vị trí Senior.

Đầu tiên, các ứng viên cần nhớ rằng trong Java, mỗi thread (luồng) sẽ có một ngăn xếp (stack) được cấp phát riêng. Những ngăn xếp (stack) này có chưa bản sao các biến (copy of variables) có thể truy cập. Khi luồng được khởi tạo, nó sao chép tất cả các biến được phép truy cập vào luồng của nó. Lúc này, từ khoá Volatile là cần thiết.

Được biết, từ khóa volatile đảm bảo rằng khi đọc và ghi vào một biến, giá trị của biến sẽ luôn được cập nhật và là global.

Top 5 câu hỏi phỏng vấn Java thường được dùng nhất
Top 5 câu hỏi phỏng vấn Java thường được dùng nhất

2. Sleep() và wait() khác nhau như thế nào?

Một số điểm khác nhau giữa sleep() và wait() như sau:

Sleep ()

  • Là một hoạt động giữ monitor, khóa đối tượng được chia sẻ (lock of the shared object) trong số milisecond được chỉ định.
  • Thường được sử dụng phổ biến để kiểm tra một số kết quả nhất định. Chờ một kết quả khác đang trong quá trình thực thi.

Wait ()

  • Tạm dừng luồng cho đến khi số milliseconds được chỉ định trôi qua hoặc nó nhận được thông báo mong muốn từ một luồng khác (tùy điều kiện nào đến trước).
  • Thường được sử dụng trong các application đa luồng. Dùng kèm với notify() và notifyAll(). Nhằm đảm bảo tính đồng bộ hóa (synchronization) trên tất cả các thread.

3. Có hai thread đang chạy là 1 và 2. Thread 1 throw exception, thread 2 bắt như thế nào?

Để có thể trả lời được câu hỏi này, các ứng viên cần phải nắm chắc về throw exception. Trên thực tế, exception thường không phải là câu hỏi phỏng vấn java hay gặp. Tuy nhiên, việc nắm chắc phần này sẽ là một điểm cộng.

Để catch được exception ở thread khác, ta có thể sử dụng Thread.UncaughtExceptionHandler.

Top 5 câu hỏi phỏng vấn Java thường được dùng nhất
Top 5 câu hỏi phỏng vấn Java thường được dùng nhất

4. Method reference là gì?. Tiện lợi như nào?

Kể từ sau Java 8, đây cũng được đánh giá là một câu hỏi phỏng vấn java khá hay.

Method reference được giới thiệu ở Java 8 cho phép ta khởi tạo cái constructors và các methods (static hoặc không). Quan trọng là các methods hay constructors này có thể sử dụng như là lambdas.

5. Sự khác biệt giữa Jar và war

Sự khác biệt giữa Jar và War được thể hiện như sau:

JAR

  • Full form của các file Java.
  • Một file JAR có thể có nhiều file Java.
  • JAR thường được sử dụng để lưu giữ library.

WAR

  • Full form của WAR là Web Archive Files.
  • WAR chứa đủ thứ: XML, Java Servlet page, …
  • Chủ yếu sử dụng cho ứng dụng web.

Lời kết

Trên đây là 5 câu hỏi phỏng vấn Java khá hay thường xuất hiện trong các buổi phỏng vấn. Hy vọng sau bài viết này, các bạn lập trình viên tương lai có thể chuẩn bị kỹ càng hơn trước khi tham gia phỏng vấn.

Ngan

Booking.com
Klook.com
Booking.com