Java无法为我自己的类找到符号

时间:2014-10-09 07:17:57

标签: java

我知道这已被问过一百万次,但我仍然无法根据之前的解决方案找出问题的解决方案。我看到的大多数问题涉及到产生多个文件的类,环境变量以及像我这样的初学者无法理解的类似奇怪的东西。

我有一个非常简单的测试设置来试图理解这个问题。

class Class1{
}

public class testClasses{
    public static void main(String[] args){
        System.out.print(Class1);
    }
}

(显然在名为testClasses.java的文件中)。

它给我一个错误,说cannot find symbol指的是Class1。 Java正在发生什么,这使得它无法识别Class1

4 个答案:

答案 0 :(得分:3)

编译器认为Class1是一个未声明的变量。你想要的是什么

System.out.println(Class1.class);

System.out.println(new Class());

答案 1 :(得分:2)

我认为你的意思是:

System.out.print(new Class1());

为了使其正常工作(打印人类可读的内容),您需要覆盖toString()中的Class1方法。

答案 2 :(得分:1)

您的问题是Class1不是符号或变量。它是一个类的名称。对该类的引用。什么时候打印出去; System.out.println方法接受一个对象。你没有。

如果您的目标是System.out.println(new Class1()),则可以尝试{{1}}。

答案 3 :(得分:0)

只有Class1JVM没有任何意义,所以你可以使用

System.out.println(Class1.class);

System.out.println(new Class());