【发布时间】:2014-09-07 09:30:05
【问题描述】:
我正在用 Java 学习 RTTI,我写了一个这样的函数:
static void select(Shape s, Class c)
{
if(s instanceof c)
s.setSelected(true);
}
//Calling function: select(shape0, Circle);
问题是,我不知道是否可以通过 Class 作为参数?编译器说它是错误的,它找不到 c。所以我用不同的代码来解决这个问题:
static void select(Shape s,Object obj)
{
if(s.getClass().equals(obj.getClass()))
s.setSelected(true);
}
//Calling function: select(shape0, new Circle());
但我想知道第一个例子是否可行?
【问题讨论】:
-
看看这个早先的问题stackoverflow.com/questions/949352/…