在另一个类中引用Class时出错

时间:2013-03-03 17:17:02

标签: java list

在我的CD类和TrackList类中,我有一个名为tracklist的对象,它出现错误。我不知道我需要添加或删除什么来修复它。 这是我的CD课程:

public class CD {
    public String artist;
    public String title;
    public trackist myTracklist;

    public CD(String artist, String title){
        artist = artist;
        title = title;
        myTracklist = new tracklist(100);
    }

    public static void main(String[] args) {
        String mainArtist;
        String mainTitle;
        CD myCD = new CD("RisingNation", "Natioins");
        mainArtist = myCD.getArtist();
        System.out.println(mainArtist);
        mainTitle = myCD.getTitle();
        System.out.println(mainTitle);
        myCD.display();
    }

    public String getArtist(){
        String person;
        person = artist;
        return person;
    }
}

这也是我的跟踪列表,

public class TrackList {
    int length;
    int numUsed;
    String[] storage;

    public tracklist(int size){// this shows up underlined in red
        length = size;
        numUsed = 0;
        storage = new String[length];
    }

    public int count(){
        return numUsed;
    }
}

2 个答案:

答案 0 :(得分:0)

发生错误是因为编译器不知道tracklist是否应该是方法,因为没有返回类型,或者是构造函数,因为它与类名不匹配。但在我看来,它应该是一个构造函数。

所以将代码更改为:

public TrackList(int size)

您还应该更改CD类构造函数,如:

public CD(String artist, String title){
    this.artist = artist;
    this.title = title;
    myTracklist = new tracklist(100);
}

由于构造函数参数与类全局变量具有相同的名称,因此需要使用this.引用全局变量。

答案 1 :(得分:0)

该行应该是Constructor吗?

构造函数名称应与类名称相同。案件很敏感。这意味着,如果你的班级是

    public class TrackList {}

所以构造函数必须是

    public TrackList () {}