1. 程式人生 > >Java呼叫外部私有方法

Java呼叫外部私有方法

描述:在寫單元測試的時候,要測試一個私有方法

解決方案:利用反射,呼叫私有方法

    /**呼叫私有方法
	 * 
	 * @param c           class名
	 * @param methodName  方法名
	 * @param parameters  方法引數
	 * @return Method實體 
	 * @throws NoSuchMethodException
	 * @throws SecurityException
	 */
	
	public  Method reflection(Class c,String methodName,@SuppressWarnings("rawtypes") Class[] parameters) throws NoSuchMethodException, SecurityException{
		
		Method method = c.getDeclaredMethod(methodName,parameters);
		
		method.setAccessible(true);
		
		return method;
	}
分析:為了方便,我提取成方法,只需要傳入指定的類,方法名,引數就可以了!用的是泛型,通用嘛!

注意:有說的不對的地方,請多多指教!一起學習。