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

276 Các câu hỏi phỏng vấn Java Developer được chia sẻ bởi các ứng viên

Bộ câu hỏi phỏng vấn về thông tin cá nhân

Hãy giới thiệu qua về bản thân bạn?

Đây là dạng câu hỏi phổ biến mà khi đi phỏng vấn xin việc bạn sẽ được hỏi. Bạn hoàn toàn có thể chuẩn bị và luyện tập trước ở nhà. Câu trả lời cần ngắn gọn, khoảng 2-3 phút. Bên cạnh đó, cũng cần phải đầy đủ với các thông tin cần thiết nhất cho nhà tuyển dụng, đặc biệt là kinh nghiệm liên quan đến vị trí Java Developer

Theo bạn, điểm mạnh điểm yếu của mình là gì?

Đây là phần mà các bạn sẽ tự đánh giá về bản thân mình để đưa điểm mạnh, điểm yếu. Dựa vào đó, nhà tuyển dụng sẽ có cái nhìn tổng quan nhất về con người, tính cách và có phù hợp với vị trí họ đang tuyển dụng cũng như văn hóa công ty hay không?  

Bạn biết gì về công ty chúng tôi?

Nhà tuyển dụng rất quan tâm đến việc bạn biết về công ty của họ như thế nào? Hơn hết họ biết được ứng viên có thực sự hiểu rõ về công ty và tìm hiểu trước khi tham gia phỏng vấn hay không. Bởi vậy, bạn nên tìm hiểu kỹ lưỡng về công ty và trình bày một số vấn đề liên quan như lĩnh vực hoạt động, văn hoá, quy mô hoạt động của công ty như thế nào?,..

Các câu hỏi phỏng vấn thường gặp

Bạn biết gì về Java?

Java là một ngôn ngữ lập trình bậc cao, hướng đối tượng, dựa trên class (lớp); được phát triển bởi Sun Microsystems từ những năm 1995, hiện nay thuộc sở hữu của Oracle. Đặc điểm nổi bật nhất của Java là khả năng cho phép các nhà phát triển ứng dụng viết code một lần và có thể chạy ở mọi nơi. Để làm được điều này thì các ứng dụng Java sẽ được biên dịch thành bytecode, sau đó chạy trên nền máy ảo JVM đã được cài sẵn trên nền tảng hệ điều hành.

Cú pháp của Java tương tự như C và C++; phiên bản mới nhất hiện nay là Java 19 phát hành tháng 9/2022. Java được sử dụng trong đa dạng các lĩnh vực:

  • Desktop Application

  • Web Application

  • Enterprise Application (phổ biến như các nghiệp vụ ngân hàng)

  • Mobile Application

  • Hệ thống nhúng

  • Robotic, Smarthome

  • Game

Các tính năng nổi trội của Java là gì? 

Những tính năng nổi trội của ngôn ngữ lập trình Java:

  • Hướng đối tượng: tất cả trong Java đều là Object nên có thể dễ dàng mở rộng

  • Nền tảng độc lập: Java biên dịch source code thành bytecode  chạy trên nền tảng máy ảo JVM và không phụ thuộc vào nền tảng hệ điều hành

  • Đa luồng: Java hỗ trợ đa luồng, tức là chương trình viết ra có thể thực hiện nhiều tác vụ cùng lúc

  • Dễ học, dễ hiểu: Java có cú pháp dựa trên C/C++, đồng thời loại bỏ các tính năng phức tạp và hiếm sử dụng; có tính năng tự động hủy cấp phát bộ nhớ,… giúp người học dễ đọc, dễ hiểu code.

  • Bảo mật cao: việc chạy bên trong một máy ảo JVM giúp các chương trình Java khó bị can thiệp tác động, ngoài ra Java có sẵn các lớp giúp chương trình của bạn bảo mật tốt hơn: Classloader, Bytecode Verifier, Security Manager

  • Tính phân tán: Java tạo điều kiện cho người dùng tạo những ứng dụng phân tán bằng RMI và EJB, nó giúp chúng ta có thể truy cập đến các tệp bằng cách gọi phương thức từ bất kỳ máy nào trên Internet

Phân biệt JVM, JDK, JRE

JVM: Java Virtual Machine là máy ảo để thực thi các Java bytecode. Để chạy chương trình Java thì bắt buộc bạn phải cài đặt JVM trên máy của bạn (mỗi hệ điều hành sẽ có phiên bản khác nhau); sau đó source code Java được biên dịch thành bytecode và chuyển vào chạy trên nền JVM

JRE: Java Runtime Environment là môi trường thực thi Java, nó chính là trình triển khai JVM cùng với các plugins, thư viện cần thiết để thực thi chương trình

JDK: Java Development Kit là bộ công cụ phát triển ứng dụng Java. Nó chứa JRE, trình biên dịch bytecode cùng các công cụ hỗ trợ khác về debug, doc. Để lập trình Java chúng ta cần cài đặt JDK

Lập trình hướng đối tượng là gì?

Lập trình hướng đối tượng (OOP – Object Oriented Programming) là một phương pháp lập trình dựa trên khái niệm về lớp và đối tượng. Đối tượng ở đây là thể hiện của 1 lớp, bao gồm các thuộc tính và phương thức. OOP bao gồm 4 tính chất:

  • Tính đóng gói: che giấu thông tin quan trọng của 1 lớp

  • Tính đa hình: 1 hành động có thể thực hiện theo nhiều cách khác nhau

  • Tính trừu tượng: ẩn các triển khai chi tiết và chỉ hiển thị tính năng với người dùng

  • Tính kế thừa: khả năng tái sử dụng thuộc tính và phương thức của lớp

Java là một ngôn ngữ lập trình hướng đối tượng, mọi thứ trong Java đều là một đối tượng; vì thế trong hầu hết các bài giảng, khóa học về OOP thì luôn dùng Java làm ngôn ngữ thực hành.

Phạm vi truy cập trong Java gồm những gì?

Trong Java, có 4 từ khóa xác định phạm vi truy cập (access specifiers) gồm:

  • Public (công khai): cho phép truy cập vào bất kỳ lớp nào hoặc thông qua bất kỳ phương thức nào thông qua tên của chúng

  • Private (riêng tư): chỉ cho phép truy cập trong chính lớp mà chúng chỉ định.

  • Protected (bảo vệ): cho phép truy cập từ trong lớp, từ một lớp con hoặc từ lớp chung gói

  • Default (mặc định): phạm vi tiêu chuẩn, chỉ cho phép truy cập từ cùng một gói

Có những kiểu dữ liệu nào trong Java. Autoboxing và Unboxing là gì?

Trong Java có 8 kiểu dữ liệu cơ bản (Primitive Type):

  • byte

  • short

  • int

  • long

  • float

  • double

  • boolean

  • char

Trong Java, tất cả đều là Object; vì thế trong quá trình biên dịch, Java sẽ tự động chuyển đổi giữa kiểu dữ liệu cơ bản (Primitive Type) về đối tượng tương ứng với lớp (Wrapper class) của kiểu dữ liệu đó. Chẳng hạn int chuyển sang lớp Integer, kiểu double chuyển sang Double, … Quá trình này gọi là Autoboxing. Và ngược lại để chuyển từ Integer về int, gọi là Unboxing.

Thread trong Java là gì?

Trong Java, quá trình thực thi một chương trình gọi là Process; một Process có thể có nhiều thực thi đơn bên trong gọi là Thread (luồng). 

Một Thread có thể có những trạng thái sau:

  • New: khi tạo 1 lớp instance của lớp Thread và chưa gọi phương thức start

  • Runnable: trạng thái Thread sẵn sàng thực thi

  • Running: đang xử lý code trong Thread

  • Non-Runable (Blocked): trạng thái khi Thread vẫn còn tồn tại nhưng không thể chạy do không đủ điều kiện. Nó bao gồm việc bị blocked trên I/O và blocked trên Synchronization.

  • Terminated: Thread kết thúc

Deadlock là gì? Làm sao để tránh nó.

Deadlock là một trạng thái xảy ra khi có 2 process A và B cùng thực hiện, trong đó A cần chờ B thực hiện xong để chạy tiếp và đồng thời B cũng chờ A thực hiện xong mới có thể chạy tiếp. Kết quả là cả 2 process A và B đều không thể chạy được, chờ nhau vô thời hạn.

Để tránh deadlock, có 1 số cách xử lý như sau:

  • Tránh Nested Locks: không cấp khóa cho nhiều thread

  • Tránh cấp khóa không cần thiết

  • Sử dụng Thread.join set timeout cho Thread

Các interface cơ bản của Collections là gì?

Java Collections framework sử dụng để thao tác dữ liệu dạng tập hợp các objects. Có gồm các interface sau:

  • Collection: lớp cơ bản nhất chứa các phương thức làm việc với tập hợp objects như duyệt qua các phần tử

  • Set: mỗi phần tử trong tập hợp chỉ xuất hiện một lần duy nhất

  • List: danh sách tuyến tính sắp xếp theo một thứ tự nhất định

  • Queue: hàng đợi, kiểu dữ liệu FIFO (first-in first-out) vào trước ra trước

  • Map: đồ thị, ánh xạ lưu trữ dạng key-value

Lưu ý là Set, List, Queue đều kế thừa Collection; riêng Map thì là một interface độc lập với chỉ những phương thức riêng nó.

Garbage Collectors là gì?

Bộ thu gom rác Garbage Collectors là một quá trình thụ động thực thi nhiệm vụ quản lý bộ nhớ trong Java. Trong quá trình chạy chương trình Java, các đối tượng được tạo ra ở vùng nhớ heap (một phần bộ nhớ dành cho chương trình), sau đó nếu đối tượng không được sử dụng đến nữa thì garbage collectors sẽ truy tìm và xóa bỏ để thu hồi dung lượng bộ nhớ.

Nếu một object được set reference null thì đối tượng đó sẽ được đánh dấu là sẵn sàng cho việc thu gom rác trong chu kỳ hoạt động tiếp theo của Garbage Collectors. Để khởi động việc dọn rác, chúng ta có thể sử dụng các methods System.gc hoặc Runtime.gc

Kinh nghiệm “đậu” phỏng vấn

Để buổi phỏng vấn diễn ra suôn sẻ và nắm chắc phần thành công, bạn cần chú trọng thêm các yếu tố:

  • Hiểu rõ vị trí bạn đang ứng tuyển: Trước khi tham gia phỏng vấn, hãy nắm rõ về yêu cầu và trách nhiệm của vị trí Java Developer mà bạn đang ứng tuyển. Điều này giúp bạn chuẩn bị cho các câu hỏi liên quan đến kiến thức kỹ thuật và khả năng làm việc thực tế.

  • Chia sẻ về dự án thực tế: Nếu có thể, hãy đề cập đến các dự án thực tế mà bạn đã tham gia hoặc tự tạo ra. Diễn giải cách bạn đã xử lý các thách thức, cách bạn thiết kế và triển khai các tính năng, và cách bạn làm việc trong nhóm.

  • Sự học hỏi và tư duy logic: Hãy thể hiện sự sẵn sàng học hỏi và tư duy logic. Mảng lập trình luôn phát triển và một Java Developer tốt cần phải có khả năng nắm bắt kiến thức mới và áp dụng nó trong thực tế.

  • Hỏi về công ty và dự án: Thể hiện sự quan tâm bằng cách đặt các câu hỏi liên quan đến công ty, dự án và quy trình làm việc. Điều này không chỉ cho thấy tâm huyết của bạn mà còn giúp bạn hiểu rõ hơn về môi trường làm việc.

  • Tự tin và trung thực: Đừng sợ thừa nhận nếu bạn không biết câu trả lời. Thay vào đó, thể hiện sự tự tin trong những kiến thức bạn đã biết và sẵn sàng học hỏi.

  • Dress code và thái độ: Mặc lịch sự và phù hợp với văn hóa của công ty và thể hiện thái độ tích cực, lịch sự và sẵn sàng làm việc trong môi trường đa dạng.

Câu hỏi phỏng vấn Java Developer & Cách trả lời

Dưới đây là 3 câu hỏi phỏng vấn Java Developer hàng đầu và cách trả lời chúng:

Câu hỏi #1: Bạn hiểu khái niệm Java như thế nào? Vì sao Java không phụ thuộc vào nền tảng?

Java là một trong những loại ngôn ngữ lập trình vẫn đang được sử dụng phổ biến hiện nay. Mục đích của Java là lập trình hướng đối tượng cao cấp và hầu như sẽ sử dụng ngôn ngữ C hoặc C ++.

Hiện tại, Java được sử dụng để thiết kế những chương trình, phần mềm hoặc các ứng dụng cho rất nhiều nền tảng khác nhau. Do đó, có thể thấy rằng, Java là ngôn ngữ không phụ thuộc vào bất kỳ nền tảng nào.

Câu hỏi #2: Hiện tại, Java đang được hỗ trợ trên những nền tảng nào?

Bạn có thể nêu một số ví dụ về những nền tảng có thể sử dụng được ngôn ngữ Java như Linux, Windows, Mac OS,… Hiện tại, Java có thể chạy ở nhiều nền tảng khác nhau.

Mặc dù đây là câu hỏi phỏng vấn Java căn bản nhưng khả năng xuất hiện là rất cao. 

Câu hỏi #3: Phạm vi truy cập trong Java gồm những gì?

Trong Java, có 4 từ khóa xác định phạm vi truy cập (access specifiers) gồm:

  • Public (công khai): cho phép truy cập vào bất kỳ lớp nào hoặc thông qua bất kỳ phương thức nào thông qua tên của chúng
  • Private (riêng tư): chỉ cho phép truy cập trong chính lớp mà chúng chỉ định.
  • Protected (bảo vệ): cho phép truy cập từ trong lớp, từ một lớp con hoặc từ lớp chung gói
  • Default (mặc định): phạm vi tiêu chuẩn, chỉ cho phep truy cập từ cùng một gói

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

Java Developer được hỏi... 06/06/2023

Hãy cho biết sự khác nhau giữa throw và throws

1 câu trả lời

Sự khác nhau giữa throw và throws

  • Từ khoá throw trong java được sử dụng để ném ra một ngoại lệ (Exception) cụ thể.
  • Từ khóa throws trong java được sử dụng để khai báo một ngoại lệ. Nó thể hiện thông tin cho lập trình viên rằng có thể xảy ra một ngoại lệ, vì vậy nó là tốt hơn cho các lập trình viên để cung cấp các mã xử lý ngoại lệ để duy trì luồng bình thường của chương trình.

throw

throws
Từ khóa throw trong java được sử dụng để ném ra một ngoại lệ rõ ràng. Từ khóa throws trong java được sử dụng để khai báo một ngoại lệ.
Ngoại lệ checked không được truyền ra nếu chỉ sử dụng từ khóa throw. Ngoại lệ checked được truyền ra ngay cả khi chỉ sử dụng từ khóa throws.
Sau throw là một instance. Sau throws là một hoặc nhiều class.
Throw được sử dụng trong phương thức có thể quăng ra Exception ở bất kỳ dòng nào trong phương thức (sau đó dùng try-catch để bắt hoặc throws cho thằng khác sử lý) Throws được khai báo ngay sau dấu đóng ngoặc đơn của phương thức. Khi một phương thức có throw bên trong mà không bắt lại (try – catch) thì phải ném đi (throws) cho thằng khác xử lý.
Không thể throw nhiều exceptions.

Có thể khai báo nhiều exceptions

Ví dụ: public void method() throws IOException, SQLException { }

Java Developer được hỏi... 06/06/2023

Bạn hãy cho biết sự quan trọng của finally block trong xử lý ngoại lệ

1 câu trả lời

Một finally block luôn được thực thi, bất kể là một ngoại lệ có được xử lý hay không. Ngay cả trong trường hợp không có phát biểu catch và một ngoại lệ được quăng ra, finally block vẫn cứ được thực thi. Ngoài ra, finally block cũng được dùng để giải phóng tài nguyên như I/O buffers, database connections…

Java Developer được hỏi... 06/06/2023

Chuyện gì xảy ra đối với Exception object sau khi xử lý ngoại lệ?

1 câu trả lời

Đối tượng ngoại lệ (exception object) sẽ được thu gom trong lần thu gom tiếp theo

Java Developer được hỏi... 06/06/2023

Finally block khác thế nào so với phương thức finalize() method?

1 câu trả lời

  • Một finally block được thực thi bất kể một ngoại lệ được quăng ra hay không và được dùng để giải phóng tài nguyện đang bị ứng dụng chiếm giữ
  • Finalize là một phương thức được bảo vệ của lớp object, được gọi bởi Java Virtual Machine (JVM) ngay trước khi một object được trình dọn dẹp garbage collection thu hồi.
Java Developer được hỏi... 06/06/2023

Java Applets là gì?

1 câu trả lời

Java Applet là chương trình Java chạy trên trình duyệt Web. Một applet có thể là một ứng dụng Java đầy đủ tính năng bởi vì nó có toàn bộ Java API tại cách bố trí của nó. Applet được sử dụng để tạo các ứng dụng web động và web tương tác.

Java Developer được hỏi... 06/06/2023

Bạn hãy mô tả vòng đời của một Applet

1 câu trả lời

Một applet có thể ở những trạng thái sau:

  • Init: Applet được khởi tạo mỗi lần tải.
  • Start: bắt đầu thực thi một applet.
  • Stop: Dừng việc thực thi applet.
  • Destroy: Thực hiện việc dọn dẹp trước khi gỡ bỏ applet.
Java Developer được hỏi... 06/06/2023

Chuyện gì xảy ra khi một applet được tải?

1 câu trả lời

Đầu tiên, một phiên bản của lớp điều khiển (controlling class ) của applet được tạo. Sau đó, applet tự khởi tạo và cuối cùng, nó bắt đầu chạy.

Java Developer được hỏi... 06/06/2023

Bạn hãy cho biết sự khác nhau giữa một Applet và một ứng dụng Java?

1 câu trả lời

Java Application

Java Applet
Ứng dụng Java đơn thuần là một chương trình Java có thể thực thi một cách độc lập mà không cần đến trình duyệt web. Applet là một chương trình Java chạy trên trình duyệt web và Java trên các trình duyệt này phải được bất lên.
Cần phải có các chức năng chính để thực thi Không cần đến các chức năng chính vẫn có thể thực thi
Ứng dụng Java có thể truy cập vào hệ thống file và network nội bộ. Các applets không thể truy cập vào đĩa cứng và mạng
Ứng dụng có thể truy cập vào bất cứ tài nguyên nào có trên hệ thống. Applets chỉ có thể một số dịch vụ giới hạn và không thể truy cập vào các hệ thống nội bộ
Ứng dụng có thể thực thi các chương trình từ hệ thống nội bộ

Applets không thể chạy các chương trình từ máy tính

Cần phải có chương trình ứng dụng để thực hiện các tác vụ cho user. Một chương trình applet thực thi các tác vụ nhỏ hoặc một phần của tác vụ.
Java Developer được hỏi... 06/06/2023

Applet có những hạn chế gì?

1 câu trả lời

Vì lý do bảo mật, Java applets có một số hạn chế sau:

  • Java applet không thể load các thư viện hay định nghĩa các phương thức tự nhiên (native method)
  • Applet không thể đọc hay ghi file trên các máy chủ đang thực thi
  • Applet không thể đọc một số thuộc tính của hệ thống
  • Applet không thể tạo kết nối mạng ngoại trừ với máy chủ mà nó đến.
  • Applet không thể chạy bất cứ chương trình nào trên máy chủ mà nó đang thực thi
Java Developer được hỏi... 06/06/2023

Bạn hãy cho biết applet không tin cậy (untrusted applets) là gì?

1 câu trả lời

Untrusted applets là những Java applets không thể truy cập hoặc thực thi các file hệ thống nội bộ. Mặc định tất cả các applets được tải xuống đều được xem là không tin cậy

Java Developer được hỏi... 06/06/2023

Bạn hãy cho biết sự khác nhau giữa các applet được tải qua internet và các applet được tải qua hệ thống file là gì?

1 câu trả lời

Đối với trường hợp một applet được tải qua internet, applet được tải bởi applet classloader và phải tuân theo các hạn chế do trình quản lý bảo mật applet thực thi. Với trường hợp một applet được tải từ đĩa nội bộ, applet được tải bởi trình tải hệ thống file (file system loader). Applet được tải qua hệ thống file được phép đọc file, ghi file và tải thư viện trên máy đó. Ngoài ra, các ứng dụng được tải qua hệ thống file được phép thực thi các quy trình và cuối cùng, các ứng dụng được tải qua hệ thống file không được chuyển qua trình xác minh bytecode (bytecode verifier).

Thông tin thêm: Bytecode verifier tức trình xác minh bytecode, kiểm tra xem byte code có được tạo ra phù hợp hay không. Nếu xác minh là không thành công, sẽ thông báo lỗi verify.

Java Developer được hỏi... 06/06/2023

 Applet Classloader là gì và nó có nhiệm vụ gì?

1 câu trả lời

Java Classloader hay còn gọi là Trình nạp lớp là một phần của JRE làm nhiệm vụ tự động nạp các class Java vào JVM. Nó bổ sung tính bảo mật bằng cách tách gói cho các lớp của hệ thống file cục bộ từ các gói được nhập từ các nguồn mạng.

Java Developer được hỏi... 06/06/2023

Trình quản lý bảo mật applet (applet security manager) là gì và nó có nhiệm vụ gì?

1 câu trả lời

Trình quản lý bảo mật applet là một cơ chế để áp đặt các hạn chế đối với các Java applet. Một trình duyệt chỉ có thể có một trình quản lý bảo mật. Trình quản lý bảo mật được thiết lập khi khởi động và sau đó nó không thể bị thay thế, quá tải, ghi đè hoặc mở rộng.

Java Developer được hỏi... 06/06/2023

Sự khác nhau giữa Choice và List là gì?

1 câu trả lời

  • Đối tượng của lớp Choice được sử dụng để hiển thị menu popup của các lựa chọn. Lựa chọn do người dùng lựa chọn được hiển thị ở đầu trình đơn. Nó kế thừa lớp Component.
  • Đối tượng của lớp List thể hiện một danh sách các mục văn bản. Với sự giúp đỡ của đối tượng List, người dùng có thể chọn một trong hai mục hoặc nhiều mục. Nó kế thừa lớp Component.
Java Developer được hỏi... 06/06/2023

Layout manager trong Java Swing là gì?

1 câu trả lời

Layout manager điều khiển cách trình bày vật lý của các phần tử GUI như là button, textbox, option button v.v… Một layout manager tự động bố trí các thành phần này trong container.

Tất cả các thành phần mà chúng ta vừa tạo sử dụng layout manager mặc định. Cho ví dụ, ‘FlowLayout’ là cách trình bày mặc định của một applet. Layout manager này sẽ tự động sắp xếp các thành phần. Tất cả các thành phần được đặt trong một container, và được sắp xếp đến layout manager tương ứng. Layout manager được thiết lập bằng phương thức,được gọi là ‘setLayout()’.

Java Developer được hỏi... 06/06/2023

Sự khác nhau giữa một Scrollbar và một JScrollPane ?

1 câu trả lời

Một Scrollbar là một Component nhưng không phải là một Container. Đối tượng của lớp Scrollbar được sử dụng để thêm thanh cuộn ngang và dọc. Scrollbar là một thành phần GUI cho phép chúng ta thấy số hàng và cột vô hình.

Một ScrollPane là một Comtainer. ScrollPane xử lý các sự kiện của chính nó và thực hiện cuộn của nó.

Java Developer được hỏi... 07/06/2023

 Bạn hãy cho biết phương thức Swing nào là thread-safe (luồng an toàn)?

1 câu trả lời

Mã xử lý sự kiện Swing (Swing event handling code ) chạy trên một luồng đặc biệt được gọi là luồng điều phối sự kiện (event dispatch thread). Hầu hết các code gọi phương thức Swing cũng chạy trên luồng này. Điều này là cần thiết vì hầu hết các phương thức đối tượng Swing không phải là thread-safe: việc gọi chúng từ nhiều thread có nguy cơ gây nhiễu luồng (thread interference) hoặc lỗi nhất quán bộ nhớ (memory consistency errors).

Chỉ một số phương thức Swing được gắn nhãn thread-safe trong đặc tả API; chúng có thể được gọi một cách an toàn từ bất kỳ thread nào. Tất cả các phương thức Swing khác phải được gọi từ event dispatch thread. Các chương trình bỏ qua quy tắc này có thể hoạt động chính xác nhưng có thể xảy ra các lỗi không thể đoán trước và rất khó để tái tạo (tức reproduce để debug).

Có 3 phương thức thread-safe trong Swing: repaint, revalidateinvalidate không cần phải thực thi trong event dispatch thread.

Java Developer được hỏi... 07/06/2023

 Hãy kể tên 3 component lớp con (Component subclasses) hỗ trợ vẽ.

1 câu trả lời

Ba component là Canvas, Frame, Panel hỗ trợ vẽ (painting).

Java Developer được hỏi... 06/06/2023

Bạn hãy cho biết clipping là gì?

1 câu trả lời

Clipping là giới hạn vẽ trong một khu vực nhất định. Điều này được thực hiện vì lý do hiệu quả và để tạo ra các hiệu ứng khác nhau. Khi làm việc với clip, chúng ta phải làm việc với bản sao của đối tượng Graphics hoặc khôi phục thuộc tính clip gốc. Việc thay đổi clip không ảnh hưởng đến các pixel hiện có; nó chỉ ảnh hưởng đến kết xuất trong tương lai.

Java Developer được hỏi... 06/06/2023

 Bạn hãy cho biết sự khác nhau giữaMenuItem và CheckboxMenuItem ?

1 câu trả lời

Lớp CheckboxMenuItem mở rộng lớp MenuItem và hỗ trợ một mục menu có thể được chọn hoặc bỏ chọn.

Đang xem 81 - 100 trong 276 câu hỏi phỏng vấn