无法解析方法className()

时间:2016-01-18 11:40:54

标签: java classname

我无法弄清楚为什么我在这段代码上有错误。有什么建议吗?

由于

public class HelloWorld {

  public static void main(String[] args) {

    int choice = 2;

    choice.className().getName();

  }
}

4 个答案:

答案 0 :(得分:1)

您无法在基本类型

上调用className()

答案 1 :(得分:1)

你不能,因为原语不是对象。

  

如果类的完全限定名称可用,则可以使用静态方法Class.forName()获取相应的Class。这不能用于原始类型。

答案 2 :(得分:0)

您无法像那样确定原始变量数据类型。 代码应如下所示。

public class HelloWorld {
  public static void main(String[] args) {
    int choice = 2;
    String type = ((Object)choice).getClass().getName();
  }
}

答案 3 :(得分:0)

你不能,因为它是原始类型,但你可以使用 Integer 代替 并检查它是否属于您可以使用的特定对象

Object temp = 1;
if(temp  instanceof Integer){
 System.out.println("Integer Object");
}