【问题标题】:cannot find symbol error while compiling a java class containing other class type object编译包含其他类类型对象的 java 类时找不到符号错误
【发布时间】:2012-11-08 11:13:55
【问题描述】:

我有一个包含两个类的 java 包。 A类和B类。我需要在B类中创建一个A类型的对象。我不知道发生了什么。请有人帮助我。

打包包;

A 类

B 类

我正在使用 JDK1.5 和 tomcat 并将它们放在我 D 盘的 java 文件夹中。

D:\java\jdk1.5

D:\java\tomcat

现在,我的包文件夹也在上面的位置

D:\java\pack

下面是我如何编译我的 java 类文件。

第一步:编译A.java

D:\Java\pack>set path=D:\java\jdk1.5\bin(为jdk1.5编译器设置路径)

D:\Java\pack>javac A.java(成功编译形成A.class

第 1 步:编译 B.java

D:\Java\pack>javac B.java(在这里,我收到一条错误消息)

下面是错误信息

错误信息

D:\Java\pack>javac B.java

B.java:9: 找不到符号

符号:A 类

位置:class pack.B

            A a = new A();    //creating an object of A type
            ^

B.java:9: 找不到符号

符号:A 类

位置:class pack.B

            A a = new A();      //creating an object of A type
                      ^

2 个错误

【问题讨论】:

    标签: java package


    【解决方案1】:
    javac pack\A.java pack\B.java
    

    会成功的。编译器必须能够在一次调用中解决所有问题。如果它正在寻找

    pack.B
    

    那么对应

    pack\B.java
    

    在目录结构中

    【讨论】:

    • @Brian Agnew 用你的把戏。 A.java 和 B.java 都编译成功。使用 jsp 页面,我只设置了属于 A.class (public void setName(String name){this.name = name}) (public String getName(){return name;}) 的值变量 user,我想访问 B.class 中的 getName 函数,而我得到空值。我在 B 类中创建了一个 A 类型对象并调用 public String getTemp(){B obj = new B(); temp = obj.getName(); return temp;} //inside B class 变量 temp 应该包含我在 A 类中设置的值。但它显示 Null。
    猜你喜欢
    • 2023-03-09
    • 1970-01-01
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    相关资源
    最近更新 更多