加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 在同一个包和目录中找不到符号

发布时间:2020-12-15 04:29:42 所属栏目:Java 来源:网络整理
导读:我有两个课程,包括课程和课程.它们都在同一个包和同一目录中. Offering.java: package assignment02;public class Offering implements ComparableOffering { private Course course; private int CRN; private int semester; public Offering(Course cours
我有两个课程,包括课程和课程.它们都在同一个包和同一目录中.

Offering.java:

package assignment02;

public class Offering implements Comparable<Offering> {
    private Course course;
    private int CRN;
    private int semester;

    public Offering(Course course,int CRN,int semester) {
        this.course = course;
        this.CRN = CRN;
        this.semester = semester;
    }

    public int getNumCredits() {
        return course.getNumCredits;
    }

    public int getCRN() {
        return CRN;
    }

    public int getSemester() {
        return semester;
    }

    public int compareTo(Offering other) {
        if(other == null) return - 1;
        return semester - other.semester;
    }
}

Course.java:

package assignment02;

public class Course {
    private String name;
    private String rubric;
    private String number;
    private int numCredits;

    public Course(String name,String rubric,String number,int numCredits) {
        this.name = name;
        this.rubric = rubric;
        this.number = number;
        this.numCredits = numCredits;
    }

    public String getName() {
        return name;
    }

    public String getRubric() {
        return rubric;
    }

    public String getNumber() {
        return number;
    }

    public int getNumCredits() {
        return numCredits;
    }
}

当我尝试编译产品时,我得到错误:

D:CS 140assignment02>javac Offering.java
Offering.java:4: error: cannot find symbol
    private Course course;
            ^
   symbol:   class Course
   location: class Offering

Offering.java:8: error: cannot find symbol
    public Offering(Course course,int semester) {
                    ^
   symbol:   class Course
   location: class OfferingOffering.java:8: error: cannot find symbol

我知道错误意味着编译器无法对“课程”做任何事情,但我不知道为什么.我也知道它最终会变得非常明显,但我似乎无法弄明白.任何帮助将非常感激.

解决方法

将目录更改为assignment02的父目录.然后你应该可以使用

javac assignment02Course.java assignment02Offering.java

要么

javac assignment02Course.java 
javac assignment02Offering.java

甚至

javac assignment02*.java

编译器正在寻找当前目录中的assignment02包中的Course类(所以当你在assignment02目录中时,它实际上是在寻找赋值02 / assignment02,这显然是不正确的)

虽然这会纠正你当前的问题,然后你会得到……

assignment02Offering.java:15: cannot find symbol
symbol  : variable getNumCredits
location: class assignment02.Course
    return course.getNumCredits;
                 ^
1 error

这需要纠正

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读