下面由java學習教學欄位介紹一個Java反射案例,希望對需要的朋友有幫助!
Java反射案例
需求
#寫一個"框架",不能改變該類別的任何程式碼的前提下,可以幫我們建立任意類別的對象,並且執行其中任意方法
使用
設定檔
##反射步驟
將需要建立的物件的全類別名稱和需要執行的方法定義在設定檔中 在程式中載入讀取設定檔 使用反射技術來載入類別檔案進記憶體 建立物件 執行方法 設定檔className=Student methodName=sleep
import java.io.InputStream; import java.lang.reflect.Method; import java.util.Properties; /** * @author tanglei * @date 2020/6/11 3:10 下午 */ public class ReflectTest { public static void main(String[] args) throws Exception { Student s = new Student(); Properties pro = new Properties(); //获取配置文件的路径 ClassLoader classLoader = ReflectTest.class.getClassLoader(); InputStream is = classLoader.getResourceAsStream("pro.properties"); pro.load(is); String className = pro.getProperty("className"); String methodName = pro.getProperty("methodName"); //加载类进内存 Class cla = Class.forName(className); Object obj = cla.newInstance(); //加载方法进内存 Method method = cla.getMethod(methodName); method.invoke(obj); } }
以上是Java反射案例(不要錯過)的詳細內容。更多資訊請關注PHP中文網其他相關文章!