一、需求

2018-02-24 15:48 更新

一、需求

今天一個(gè)“懶”程序員突然跑過來說:“反射好麻煩,我要提點(diǎn)需求?!?br /> 聽到這句話后我就知道,今天一定不好過了,奇葩需求又來了。

我們之前寫反射都是要這么寫:

 public static <T> T create(HttpRequest httpRequest) {
    Object httpRequestEntity = null;
    try {
        Class<T> httpRequestEntityCls = (Class<T>) Class.forName(HttpProcessor.PACKAGE_NAME + "." + HttpProcessor.CLASS_NAME);
        Constructor con = httpRequestEntityCls.getConstructor(HttpRequest.class);
        httpRequestEntity = con.newInstance(httpRequest);
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    } catch (InstantiationException e) {
        e.printStackTrace();
    } catch (IllegalAccessException e) {
        e.printStackTrace();
    } catch (NoSuchMethodException e) {
        e.printStackTrace();
    } catch (InvocationTargetException e) {
        e.printStackTrace();
    }
    return (T) httpRequestEntity;
}

因?yàn)榉瓷湓陂_發(fā)中很少用(做普通的業(yè)務(wù)開發(fā)的話),僅僅在自己寫一些框架和注解框架時(shí)會(huì)用到,所以對(duì)api總是不熟悉。每次用到api都要去網(wǎng)上查,查了后又得自己實(shí)驗(yàn)下,很不爽。更差勁的是這樣寫法可讀性十分低下。我不希望這樣寫反射,我希望反射能像

String str = new String();

這樣簡(jiǎn)單,一行代碼搞定!。
此外,有很多人都說反射影響性能,在開發(fā)的時(shí)候要避免用反射。那么什么時(shí)候該用反射,什么時(shí)候不用反射呢?用什么方式來避免反射呢?如果不明白什么時(shí)候用反射,就很難將反射活學(xué)活用了。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)