簡體   English   中英

當我們有 Class 類型的 object 時,如何在 Java 中創建實例

[英]How to create a instance in Java when we have object of type Class

我目前正在我的 Spring 引導應用程序中使用注釋。 我通過以下方式獲得成功的注釋 class :

Class s = applicationContext.getType(beanName);

之后我還能夠獲得帶注釋的方法(帶有一些 if 檢查)

Method[] methods = s.getMethods();

我想調用一個特定的方法

Object result = method.invoke(?, args);

然而,調用的簽名需要傳遞給它的 Class 的實例。 我不確定如何獲得該 class 的實例或 object?

在此處輸入圖像描述

您真的不想要一個Class實例:您要么想要調用該方法的實際實例(如果它是實例方法),要么null (如果它是 ZA81259CEF8E959C6297DF1D456EZD3 方法)。

不完全清楚你打算做什么,但如果method是一個實例方法,你需要一個s的實例來調用它。 如果s有一個無參數構造函數,那么你可以這樣做

Object result = method.invoke(s.getConstructor().newInstance(), args);

對於具有其他簽名的構造函數,將參數的類型提供給getConstructor()並將參數的值提供給newInstance()

暫無
暫無

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

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