av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

Java讓泛型實(shí)例化的方法

瀏覽:3日期:2022-08-29 13:30:30

泛型對象可以實(shí)例化嗎?

不可以,T t=new T()是不可以的,編譯器會報(bào)錯(cuò)。由于泛型擦除,編譯器在編譯時(shí)無法確定泛型所對應(yīng)的真實(shí)類型

Java讓泛型實(shí)例化的方法

解決方法

使用反射新建實(shí)例

Type superclass = getClass().getGenericSuperclass();ParameterizedType parameterizedType = null;if (superclass instanceof ParameterizedType) { parameterizedType = (ParameterizedType) superclass; Type[] typeArray = parameterizedType.getActualTypeArguments(); if (typeArray != null && typeArray.length > 0) { clazz = (Class<T>) typeArray[0]; }}

執(zhí)行結(jié)果

Java讓泛型實(shí)例化的方法

控制臺輸出

Java讓泛型實(shí)例化的方法

完整代碼

package com.learn.genericinstance;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;public class GenericInstanceLearn { public static void main(String[] args) throws InstantiationException, IllegalAccessException { UserDao userDao = new UserDao(); System.out.println(userDao.toString()); }}class Dao<T> { public Class<T> clazz; public T user; public Dao() throws IllegalAccessException, InstantiationException { Type superclass = getClass().getGenericSuperclass(); ParameterizedType parameterizedType = null; if (superclass instanceof ParameterizedType) { parameterizedType = (ParameterizedType) superclass; Type[] typeArray = parameterizedType.getActualTypeArguments(); if (typeArray != null && typeArray.length > 0) {clazz = (Class<T>) typeArray[0];user= clazz.newInstance(); } } } @Override public String toString() { return 'Dao{' +'user=' + user.toString() +’}’; }}class UserDao extends Dao<User> { public UserDao() throws IllegalAccessException, InstantiationException { } @Override public String toString() { return super.toString(); }}class User { String name; public User() { this.name = 'default name'; } @Override public String toString() { return 'User{' +'name=’' + name + ’’’ +’}’; }}

以上就是Java讓泛型實(shí)例化的方法的詳細(xì)內(nèi)容,更多關(guān)于Java泛型實(shí)例化的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 视频在线观看亚洲 | 日本中出视频 | 99久久精品国产一区二区三区 | 日韩手机视频 | 新91视频网 | 欧美黑人体内she精在线观看 | 老司机成人在线 | 国产免费一级一级 | 国产精品久久久久一区二区 | 91免费高清视频 | 欧美成人一区二区三区 | 国产亚洲一区二区三区在线观看 | 日韩a视频 | 国产一区二区 | 国产在线中文字幕 | 免费观看色 | 视频一区二区在线观看 | 国内自拍偷拍一区 | 国产999精品久久久久久绿帽 | 91久久精品视频 | 熟女毛片 | 欧美一区二区在线免费观看 | 亚洲成人午夜电影 | 毛片免费在线观看 | 婷婷综合色| 国产三级一区二区 | 精品在线99 | 欧美激情精品久久久久久变态 | 久久久久久久久久久久久久久久久久久久 | 国产一级免费在线观看 | 九九综合 | 亚洲成人免费视频在线 | 午夜午夜精品一区二区三区文 | 亚洲欧美视频一区 | 精品国产91| 91亚洲精选 | 日韩欧美三区 | 欧美精品久久 | 国产在线中文字幕 | av天天澡天天爽天天av | 精品成人免费一区二区在线播放 |