论坛首页 Java企业应用论坛

Java获得泛型类型

浏览 55499 次
该帖已经被评为精华帖
作者 正文
   发表时间:2010-02-03   最后修改:2010-02-03
class Domain{
public static Class getCurrentDomainClass(){
//获取运行时类型
}
}

class User() extends Domain{

}
class Test
{
@Test
public void test(){
User.getCurrentDomainClass();//。。。。无法获取User.class 
}
}


这个功能我找了很久,貌似无法实现。
0 请登录后投票
   发表时间:2010-02-03  
bonny 写道
class Domain{
public static Class getCurrentDomainClass(){
//获取运行时类型
}
}

class User() extends Domain{

}
class Test
{
@Test
public void test(){
User.getCurrentDomainClass();//。。。。无法获取User.class 
}
}


这个功能我找了很久,貌似无法实现。

这个确实是不行。如果不是静态方法而是成员方法的话还有点可能,好歹能拿到“this”
话说这让我想起以前别人提出“为什么不弄个'static virtual method'呢?”,不过现实是Java里没这玩儿
6 请登录后投票
   发表时间:2010-02-03   最后修改:2010-02-03
RednaxelaFX 写道
bonny 写道
class Domain{
public static Class getCurrentDomainClass(){
//获取运行时类型
}
}

class User() extends Domain{

}
class Test
{
@Test
public void test(){
User.getCurrentDomainClass();//。。。。无法获取User.class 
}
}


这个功能我找了很久,貌似无法实现。

这个确实是不行。如果不是静态方法而是成员方法的话还有点可能,好歹能拿到“this”
话说这让我想起以前别人提出“为什么不弄个'static virtual method'呢?”,不过现实是Java里没这玩儿


这玩意太有用了,我看play框架,因为java无法提供这个功能,他的find都是直接丢异常。子类的model都是classload时做字节码增强。其实跟很丑的roo的做法一摸一样,太丑了。
1 请登录后投票
   发表时间:2010-02-03  
楼主写的很有想法,我以前从没想过这些事情。
比很多人炒旧饭要强多了。
0 请登录后投票
   发表时间:2010-02-03  
如果是T
怎么在运行期取到类型呢,这个可以吗!!
0 请登录后投票
   发表时间:2010-02-03  
这种java基础的文章很多,谈不上抄袭,每个人都有自己的理解。
0 请登录后投票
   发表时间:2010-02-03  
kjj 写道
如果是T
怎么在运行期取到类型呢,这个可以吗!!

其实前面才刚刚提到这个问题……
0 请登录后投票
   发表时间:2010-02-03  
高手,回去好好学学
0 请登录后投票
   发表时间:2010-02-03  
gwpking8419 写道
andot 写道
askyuan 写道
抄袭的吧?呵呵

自己写不出来,就说人家抄袭,真卑鄙!真无耻!真龌龊!

楼主的这篇文章实在是太好了,让我如醍醐灌顶,茅塞顿开,解决了我多年来的疑惑!感谢楼主!



文明用语,别给中国人丢脸!


这句话应该留给你自己,你们这些喷子是最丢人的!
0 请登录后投票
   发表时间:2010-02-03  
推荐看看SpringSide,相当不错!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics