2013-01-31 16 views

Trả lời

9

Nếu VM không có người điều khiển có sẵn (chẳng hạn, bởi vì bạn bắt đầu nó với javaw.exe), sau đó là một cuộc gọi đến System.console() sẽ trả về null.

chỉnh sửa: ví dụ:

final boolean amRunningJavaW = System.console() == null; 
+0

Nói đúng ra, tôi nên đã đặt tên cho biến 'probablyRunningJavaW', vì điều này không thực sự thử nghiệm tên quá trình thực thi. :-) Và có thể có những lý do khác tại sao bàn điều khiển hệ thống không khả dụng, mặc dù tôi không biết bất kỳ thao tác nào. –

+0

Liên quan đến các lý do 'System.console()' trả về 'null', nếu ứng dụng của bạn được chạy với luồng tiêu chuẩn của nó được truyền tới một chương trình khác (ví dụ, ít hơn) hoặc ra tệp, sau đó' System.console () 'sẽ trả về' null' –

Các vấn đề liên quan