語言

Console 類別

定義

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

[Android.Runtime.Register("java/io/Console", DoNotGenerateAcw=true)]
public sealed class Console : Java.Lang.Object, IDisposable, Java.IO.IFlushable
[<Android.Runtime.Register("java/io/Console", DoNotGenerateAcw=true)>]
type Console = class
    inherit Object
    interface IFlushable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
繼承
屬性
實作

備註

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

虛擬機是否有主控台取決於底層平台以及虛擬機的呼叫方式。 如果虛擬機是從互動式命令列啟動,且未重新導向標準輸入與輸出串流,則其主控台會存在,且通常會連接到啟動虛擬機器的鍵盤與顯示器。 如果虛擬機是自動啟動的,例如由背景工作排程器啟動,通常不會有主控台。

若此虛擬機有主控台,則該類別由唯一實例表示,可透過呼叫 java.lang.System#console() 該方法獲得。 若無主控台裝置,則該方法的呼叫將回傳 null

讀寫操作同步,以確保關鍵操作的原子級完成;因此,呼叫方法、、、以及對回傳物件#readLine()#readPassword()的讀取、格式化和寫入操作,在多執行緒情境中可能會阻塞。 #format format()#printf printf()#reader()#writer()

呼叫 close() 和 返回#reader()#writer()的物件不會關閉這些物件的底層串流。

當主控台輸入串流結束時,主控台讀取方法會回傳null,例如在 Unix 上輸入 control-D,在 Windows 上輸入 control-Z。 若後續在主控台輸入裝置輸入更多字元,後續讀取操作將成功。

除非另有說明,將參數傳給 null 此類別中的任何方法都會導致拋出 a NullPointerException

<b>安全注意:</b> 若應用程式需要讀取密碼或其他安全資料,應在處理後手動#readPassword()#readPassword(String, Object...)將回傳的字元陣列歸零,以縮短記憶體中敏感資料的壽命。

<引用>

{@code
            Console cons;
            char[] passwd;
            if ((cons = System.console()) != null &&
                (passwd = cons.readPassword("[%s]", "Password:")) != null) {
                ...
                java.util.Arrays.fill(passwd, ' ');
            }
            }

</區塊引用>

新增於1.6版本。

Java 文件 java.io.Console

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

屬性

名稱 Description
Class

回傳此 Object的執行時類別。

(繼承來源 Object)
Handle

底層 Android 實例的帳號。

(繼承來源 Object)
JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
JniPeerMembers

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)
ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

(繼承來源 Object)

方法

名稱 Description
Charset()

回傳用於 java.nio.charset.Charset Charset的物件。Console

Clone()

建立並回傳此物件的副本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
Equals(Object)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
Equals(Object)

表示是否有其他物體「等同」於此物。

(繼承來源 Object)
Flush()

清除主控台,並強制任何緩衝輸出立即寫入。

Format(String, Object[])

使用指定的格式字串與參數,將格式化字串寫入此主控台的輸出串流。

FormatAsync(String, Object[])

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

GetHashCode()

回傳物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()
已淘汰.

當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。

(繼承來源 Object)
Notify()

喚醒一個正在該物件監視器上等待的執行緒。

(繼承來源 Object)
NotifyAll()

喚醒所有等待該物件監視器的執行緒。

(繼承來源 Object)
Printf(String, Object[])

一種方便的方法,利用指定的格式字串和參數,將格式化字串寫入此主控台的輸出串流。

PrintfAsync(String, Object[])

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

Reader()

取回與此主控台相關的唯一 java.io.Reader Reader 物件。

ReadLine()

從控制台讀取一行文字。

ReadLine(String, Object[])

從控制台讀取一行文字。

ReadLineAsync()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

ReadLineAsync(String, Object[])

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

ReadPassword()

在關閉回聲的情況下,從控制台讀取密碼或密碼

ReadPassword(String, Object[])

在關閉回聲的情況下,從控制台讀取密碼或密碼

ReadPasswordAsync()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

ReadPasswordAsync(String, Object[])

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

回傳物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。

(繼承來源 Object)
Wait(Int64, Int32)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)
Wait(Int64)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)
Writer()

取回與此主控台相關的唯一 java.io.PrintWriter PrintWriter 物件。

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

(繼承來源 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

擴充方法

名稱 Description
FlushAsync(IFlushable)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

存取與目前 Java 虛擬機相關的字元主控台裝置(如有)的方法。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於