永发信息网

java泛型T和class.getName一样吗?

答案:2  悬赏:50  手机版
解决时间 2021-02-05 06:22
  • 提问者网友:动次大次蹦擦擦
  • 2021-02-04 10:59
java泛型T和class.getName一样吗?
最佳答案
  • 五星知识达人网友:神也偏爱
  • 2021-02-04 11:42
不一样,第一个class.getName();是Class对象的一个方法,它会返回一个类名的字符串,而sql = "from"+T,这句话的语法不正确。
还有Class 是一个类,Class 类的实例表示正在运行的 Java 应用程序中的类和接口,而泛型T 也是一个类,但他本身不是Class对象
下面给出一个测试代码:

package ysw;
import java.util.*;
class Food{}
public class Test
{
public void s(T t){
String s = ""+t;//泛型T 将调用对象的toString()方法,返回该字符串由类名(对象是该类的一个实例)、at 标记符“@”和此对象哈希码的无符号十六进制表示 System.out.println(s);
Class cl = (Class) t.getClass();//让泛型赋给Class对象,
System.out.println(cl.getName());//调用Class的getName()方法,返回类名。
}
public static void main(String args[]){
Test tf = new Test();
tf.s(new Food());
}
}
////
output:

ysw.Food@1eb2c1b
ysw.Food
全部回答
  • 1楼网友:笑迎怀羞
  • 2021-02-04 13:08
sql = "from"+T
能这样用?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯