最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java通過反射創(chuàng)建對(duì)象并調(diào)用方法

 更新時(shí)間:2020年01月09日 16:51:44   作者:戈博折刀  
這篇文章主要介紹了java通過反射創(chuàng)建對(duì)象并調(diào)用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了java通過反射創(chuàng)建對(duì)象并調(diào)用方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1.用戶類

package com.lf.entity;

import com.lf.annotation.SetProperty;
import com.lf.annotation.SetTable;

public class UserEntity {
  private String userName;
  private int userAge;
  
  private final int money = 10000;
  
  public String getUserName() {
    return userName;
  }
  public void setUserName(String userName) {
    this.userName = userName;
  }
  public int getUserAge() {
    return userAge;
  }
  public void setUserAge(int userAge) {
    this.userAge = userAge;
  }
  //借錢方法
  public int getMoney(){
    System.out.println("你借了 " + money + "元!");
    return money;
  }
  //還錢方法,單個(gè)參數(shù)
  public void repay(int money){
    System.out.println("你還了 " + money + "元!");
  }
  //還錢方法,多個(gè)參數(shù)
  public void repay(String userName,int money){
    System.out.println(userName+ " 還了 " + money + "元!");
  }
}

2.測試類

package com.lf.test;

import java.lang.reflect.Method;

import com.lf.entity.UserEntity;

public class Reflection {


  //反射調(diào)用方法獲取返回值
  //第一種方法,獲取對(duì)象,直接通過對(duì)象調(diào)用方法
  //第二種方法,通過方法名獲取方法,執(zhí)行方法
  public static void main(String[] args) throws Exception {
    Class<?> userClass = Class.forName("com.lf.entity.UserEntity");
    UserEntity userEntity = (UserEntity) userClass.newInstance();

    //第一種方法
    System.out.println("第一次借錢:");
    int money = userEntity.getMoney();
    System.out.println("實(shí)際拿到錢為: " + money);
    System.out.println("------------------------分割線------------------------");

    //第二種方法,(無參的示例:借錢)
    System.out.println("第二次借錢:");
    Method getMoney = userClass.getMethod("getMoney");//得到方法對(duì)象
    Object money2 = getMoney.invoke(userEntity);//調(diào)用借錢方法,得到返回值
    System.out.println("實(shí)際拿到錢為:" + money2);
    System.out.println("------------------------分割線------------------------");

    //第二種方法,(單個(gè)參數(shù)的示例:還錢)
    System.out.println("第一次還錢:");
    Method repay1 = userClass.getMethod("repay",int.class);//得到方法對(duì)象,有參的方法需要指定參數(shù)類型
    repay1.invoke(userEntity,3000);//執(zhí)行還錢方法,有參傳參
    System.out.println("------------------------分割線------------------------");

    //第二種方法,(單個(gè)參數(shù)的示例:還錢)
    System.out.println("第二次還錢:");
    Method repay2 = userClass.getMethod("repay", String.class,int.class);//得到方法對(duì)象,有參的方法需要指定參數(shù)類型
    repay2.invoke(userEntity,"小飛",5000);//執(zhí)行還錢方法,有參傳參


  }
}

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Mybatis3 if判斷字符串變態(tài)寫法

    Mybatis3 if判斷字符串變態(tài)寫法

    這篇文章主要介紹了Mybatis3 if判斷字符串變態(tài)的寫法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2017-01-01
  • Java AES加密和解密教程

    Java AES加密和解密教程

    這篇文章主要介紹了Java AES加密和解密的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-12-12
  • SpringBoot項(xiàng)目集成依賴Mybatis步驟

    SpringBoot項(xiàng)目集成依賴Mybatis步驟

    在本篇文章中小編給大家分享了關(guān)于SpringBoot項(xiàng)目如何集成依賴Mybatis的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06
  • Springmvc conver實(shí)現(xiàn)原理及用法解析

    Springmvc conver實(shí)現(xiàn)原理及用法解析

    這篇文章主要介紹了Springmvc conver實(shí)現(xiàn)原理及用法解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Spring?Boot?利用注解方式整合?MyBatis

    Spring?Boot?利用注解方式整合?MyBatis

    這篇文章主要介紹了Spring?Boot?利用注解方式整合?MyBatis,文章圍繞主主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,需要的小伙伴可以參考一下
    2022-05-05
  • java streamfilter list 過濾的實(shí)現(xiàn)

    java streamfilter list 過濾的實(shí)現(xiàn)

    Java Stream API中的filter方法是過濾List集合中元素的一個(gè)強(qiáng)大工具,可以輕松地根據(jù)自定義條件篩選出符合要求的元素,本文就來介紹一下java streamfilter list 過濾的實(shí)現(xiàn),感興趣的可以了解一下
    2025-03-03
  • java多線程編程之向線程傳遞數(shù)據(jù)的三種方法

    java多線程編程之向線程傳遞數(shù)據(jù)的三種方法

    在多線程的異步開發(fā)模式下,數(shù)據(jù)的傳遞和返回和同步開發(fā)模式有很大的區(qū)別。由于線程的運(yùn)行和結(jié)束是不可預(yù)料的,因此,在傳遞和返回?cái)?shù)據(jù)時(shí)就無法象函數(shù)一樣通過函數(shù)參數(shù)和return語句來返回?cái)?shù)據(jù)
    2014-01-01
  • Java Annotation Overview詳解

    Java Annotation Overview詳解

    這篇文章主要介紹了Java Annotation Overview,需要的朋友可以參考下
    2014-02-02
  • SpringBoot任務(wù)之詳解郵件任務(wù)

    SpringBoot任務(wù)之詳解郵件任務(wù)

    今天給大家整理的文章是SpringBoot郵件任務(wù)的相關(guān)知識(shí)點(diǎn),文中有非常詳細(xì)的介紹及代碼示例,對(duì)正在學(xué)習(xí)SpringBoot任務(wù)的小伙伴們很有幫助,需要的朋友可以參考下
    2021-06-06
  • java??常見位邏輯運(yùn)算符梳理

    java??常見位邏輯運(yùn)算符梳理

    這篇文章主要介紹了java常見位邏輯運(yùn)算符梳理,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參一下下面文章詳細(xì)內(nèi)容
    2022-08-08

最新評(píng)論

鹤壁市| 句容市| 新营市| 合川市| 黑龙江省| 万载县| 思南县| 麻栗坡县| 碌曲县| 道真| 巍山| 江孜县| 贡觉县| 万载县| 墨玉县| 沅陵县| 巴楚县| 和静县| 新闻| 隆尧县| 浮梁县| 沂水县| 舟山市| 萝北县| 临西县| 古浪县| 澎湖县| 科尔| 修文县| 梧州市| 鸡东县| 社会| 克拉玛依市| 开平市| 安阳市| 历史| 吴旗县| 昆明市| 通城县| 南城县| 威信县|