簡體   English   中英

使用PrivilegedAccessor帶有原始參數的方法

[英]Method with primitive argument using PrivilegedAccessor

在我的Junit中,我嘗試使用PrivilegedAccessor執行以下方法,但得到NoSuchMethodException: Invalid Method getInsurance

PrivilegedAccessor.invokeMethod(InsuranceRetriever,
                    "getInsurance", new Object[] { code}, new Class[] {
                            Long.class});

以下是經過測試的方法聲明。

private InsObj getInsurance(long code)

*請注意,我正在傳遞Long.class,而實際參數是原始long。 如何傳遞原始參數。

嘗試這個:

PrivilegedAccessor.invokeMethod(InsuranceRetriever,
                "getInsurance", new Object[] { code }, 
                new Class[] { Long.TYPE });

說明:

基本類型的類對象可在每種基本類型的每個java.lang對象的TYPE靜態最終常量下找到。 Boolean.TYPEInteger.TYPEByte.TYPEShort.TYPELong.TYPE等。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM